Latest Posts

Topic: A bunch of suggestions

hessenfarmer
Avatar
Joined: 2014-12-11, 23:16
Posts: 2646
Ranking
One Elder of Players
Location: Bavaria
Posted at: 2020-04-02, 10:20

reveal scenario is deprecated we now have the mark scenario as solved mechanism in place

Edit: fix is available in current trunk

Edited: 2020-04-02, 18:03

Top Quote
Nordfriese
Avatar
Joined: 2017-01-17, 18:07
Posts: 1928
OS: Debian Testing
Version: Latest master
Ranking
One Elder of Players
Location: 0x55555d3a34c0
Posted at: 2020-04-18, 21:18

Apparently resources in a building are lost if a building is disassembled or upgraded. In my view, if the building has a worker inside, then the worker should unload the building automatically before upgrading or disassembling the building. The instant "destroy" command would still destroy the resources though. (Although, I have started getting use to manually unloading the buildings first... and perhaps there is some strategic tradeoff if you need a fast upgrade - unload first vs upgrade faster)

A branch was merged into master now that implements one of the most frequently requested features ever face-smile.png


Top Quote
blind3rdeye
Avatar
Topic Opener
Joined: 2020-03-26, 08:47
Posts: 74
Ranking
Likes to be here
Posted at: 2020-04-19, 11:00

Nordfriese wrote:

Apparently resources in a building are lost if a building is disassembled or upgraded. In my view, if the building has a worker inside, then the worker should unload the building automatically before upgrading or disassembling the building. The instant "destroy" command would still destroy the resources though. (Although, I have started getting use to manually unloading the buildings first... and perhaps there is some strategic tradeoff if you need a fast upgrade - unload first vs upgrade faster)

A branch was merged into master now that implements one of the most frequently requested features ever face-smile.png

That's good news. face-smile.png Thanks.

I'm looking forward to trying it out.

By the way, I've noticed that AppVeyor takes a long time to make builds available. I'm just curious, what is it that is taking so long? I don't really understand why it should take 4 hours to build. If it's just compiling and linking, I'd expect it to be closer to 10 mins than 4 hours.


Top Quote
Nordfriese
Avatar
Joined: 2017-01-17, 18:07
Posts: 1928
OS: Debian Testing
Version: Latest master
Ranking
One Elder of Players
Location: 0x55555d3a34c0
Posted at: 2020-04-19, 13:09

By the way, I've noticed that AppVeyor takes a long time to make builds available. I'm just curious, what is it that is taking so long? I don't really understand why it should take 4 hours to build. If it's just compiling and linking, I'd expect it to be closer to 10 mins than 4 hours.

Appveyor provides builds in 4 different configurations (32/64 bit, debug/release), and it builds only 1 job concurrently. The release builds take ~30 minutes each to compile and link, 32 bit debug an hour, and on 64 bit debug the linking is so memory- and CPU-intensive that the builds take at least 1:45 hours and often timeout when they're not done after 2h.


Top Quote
hessenfarmer
Avatar
Joined: 2014-12-11, 23:16
Posts: 2646
Ranking
One Elder of Players
Location: Bavaria
Posted at: 2020-04-19, 13:55

blind3rdeye wrote:

Nordfriese wrote:

Apparently resources in a building are lost if a building is disassembled or upgraded. In my view, if the building has a worker inside, then the worker should unload the building automatically before upgrading or disassembling the building. The instant "destroy" command would still destroy the resources though. (Although, I have started getting use to manually unloading the buildings first... and perhaps there is some strategic tradeoff if you need a fast upgrade - unload first vs upgrade faster)

A branch was merged into master now that implements one of the most frequently requested features ever face-smile.png

That's good news. face-smile.png Thanks.

I'm looking forward to trying it out.

By the way, I've noticed that AppVeyor takes a long time to make builds available. I'm just curious, what is it that is taking so long? I don't really understand why it should take 4 hours to build. If it's just compiling and linking, I'd expect it to be closer to 10 mins than 4 hours.

it is like Nordfriese explained. Building using msys on windows is not very fast but even on travis one build takes about 30 - 40 minutes each. Although it seems that debugs don't take that long in comparison.
The reason on appveyor is that we have only 2 cores (maybe 4 now I am not sure) per VM and only limited memory if we link 64 debug with 2 cores we are running out of memory. Therefore linking is restricted to one core only to keep the memory under control however this then takes ages. Additionally it takes 10 minutes for each build to download and install all the needed dependencies as the VM are always newly created from a defined state. last but not least we need some (3 or so) minutes to prepare the selfextracting executable and 2 minutes to make the translations.
Just for comparison. even on my 8core i7 with 16GB compiling only one 64 bit release takes about 10 minutes.
And our free service allows only one build a time. So we have to do everything serially.
If you wan't to know what is going on and how long it takes display the log (there is a loink at the top to display the full log) and hover over a specific line number then you see the time it got written(finished)

Edited: 2020-04-19, 13:57

Top Quote
blind3rdeye
Avatar
Topic Opener
Joined: 2020-03-26, 08:47
Posts: 74
Ranking
Likes to be here
Posted at: 2020-04-19, 14:41

Fair enough. Thanks for the explanation.

When I said 10 mins, I was just imaging how long stuff takes to compile on my computer. (Although I haven't tried building widelands specifically.) I suppose the main thing I wasn't taking into account is that I'd be using multiple cores with plenty of memory, and almost never recompiling from scratch (ie. usually it would be just a couple of altered files that need to compile).


Top Quote
niektory
Avatar
Joined: 2019-06-03, 20:06
Posts: 206
Ranking
Widelands-Forum-Junkie
Location: Poland
Posted at: 2020-04-19, 16:35

Unfortunately in Widelands' case touching one header file often requires recompiling 200 targets...

And I also restrict linking jobs to 1 on my local machine. I think it's only needed when building the tests though.


Top Quote
hessenfarmer
Avatar
Joined: 2014-12-11, 23:16
Posts: 2646
Ranking
One Elder of Players
Location: Bavaria
Posted at: 2020-04-19, 17:29

niektory wrote:

Unfortunately in Widelands' case touching one header file often requires recompiling 200 targets...

yes but that is the same on every os due to our code structure.
That doesn't affect appveyor though we are doing a build from scratch every time. As we start with clean VM for each build.


Top Quote