Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 25 26 [27] 28

Author Topic: Dwarf Fortress 0.43.04 Released  (Read 104090 times)

Random_Dragon

  • Bay Watcher
  • Psycho Bored Dragon
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #390 on: July 02, 2016, 09:45:09 pm »

That's what the orographic precipitation is supposed to do, unless something else is going on.

So that's the obvious cause eliminated, I assume? Good to see at least.

Veroule

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #391 on: July 03, 2016, 12:04:13 am »

I looked at the chroot stuff...  and it just said "then you build the kernel as usual".  I never did that (installed Ubuntu from an iso), so I don't really know what to do.  I'm not sure I'm Linuxy enough to accomplish any of these methods.
This reference might help: https://wiki.ubuntu.com/DebootstrapChroot
Logged
"Please, spare us additional torture; and just euthanise yourselves."
Delivered by Tim Curry of Clue as a parody of the lead ass from American Idol in the show Psych.

Khym Chanur

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #392 on: July 03, 2016, 02:46:43 am »

Burned most of the day trying to fix the worlds with the same seed that produce different results...  it's hard to tell when it has been narrowed down.

Running a worldgen on Linux under Valgrind I got a lot of "Conditional jump or move depends on uninitialised value", so it might be an unitialized memory problem. If you compile on Linux with the flags set to generate debugging info then you can get Valgrind to give you function names, file names and line numbers where it happens.  Even if those aren't the cause of the bug you're looking at you should fix them anyways, since they might start causing bugs in the future.
Logged

FantasticDorf

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #393 on: July 03, 2016, 07:13:52 am »

Burned most of the day trying to fix the worlds with the same seed that produce different results...  it's hard to tell when it has been narrowed down.  I turned off trade and it went away, but that doesn't mean trade is responsible -- it could be something in how the goods are produced, or how the resource types are decided, or the populations creating the goods (those all seem not to be the cause, but it only happens 1 out of 4 times once trade is off, so it's difficult to pick up the right problem).   And so on.  It's hard to nail these down, but hopefully I can find the root cause and sort it out.  Presumably there's some difference in initial conditions, some outside factor (like a clock call), or some out-of-bounds situation somewhere, but I haven't found anything obvious yet.

To have a guess and just throwing out a suggestion as to what your problem might be, generating/deciding all the objects spontaneously or in some kind of order by picking out what's been sold already on the list might have something to do with it. If you've got to apply the CPU to bring these objects into being (given that wagon clutter does contribute to total fortress clutter, as per caps on seed gathering when wagons are docked up) and maintain them moving inside a 'container' (going to be a bumpy ride moving across so many tiles, given that lots of water in oceans can only bear to sit still in a stable manner) then also the memory aspect of having to allocate all those items appropriately to the relevant tags and load them in if they were sold to the trader, a quite hefty task though not exactly groundbreaking.

My suggestion to test this out, is to remove all explicit entity tags that affect trade (all the tool tags too besides from common domestic pack/pull so that trade can still come in), that should help you narrow down at-least one cause by means of deduction (as you mention it might be other factors outside that bear upon trade) and identify core industries that might cause a spanner in the works.

Meat and wood without trade agreements are relatively uncommon goods on the screen and a good place to start if entity tags are bare.

Logged

soulsource

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #394 on: July 03, 2016, 09:23:43 am »

You definitely need just one version of the -dev packages, as those contain architecture independent headers and should therefore be the same for amd64 and i386.

That's just not true.

Ooops, sorry. I don't know how I got that mixed up. On Debian based distributions the -dev packages do indeed contain more than just headers - they also hold the static libraries, which of course are architecture dependent. But still, if one doesn't statically link, having one version of -dev packages should suffice.
Logged
Quote from: Porkins Windu
Really, DF and Metal are practically the same. Drunkenness, Death, Depression, Depravity, Despondence, Demons, Dementia, Darkness. And thats just the D's!

mifki

  • Bay Watcher
  • works secretly...
    • View Profile
    • mifki
Re: Dwarf Fortress 0.43.04 Released
« Reply #395 on: July 03, 2016, 10:14:07 am »

You definitely need just one version of the -dev packages, as those contain architecture independent headers and should therefore be the same for amd64 and i386.

That's just not true.

Ooops, sorry. I don't know how I got that mixed up. On Debian based distributions the -dev packages do indeed contain more than just headers - they also hold the static libraries, which of course are architecture dependent. But still, if one doesn't statically link, having one version of -dev packages should suffice.

They're putting them to the right places, or something... it won't find libs unless proper packages installed. But of course that's just a package management issue, you can get libs from anywhere else (even from the same conflicting packages), put them anywhere and configure paths - that's just not the easiest way for Toady.

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Dwarf Fortress 0.43.04 Released
« Reply #396 on: July 03, 2016, 12:32:35 pm »

Running a worldgen on Linux under Valgrind I got a lot of "Conditional jump or move depends on uninitialised value", so it might be an unitialized memory problem. If you compile on Linux with the flags set to generate debugging info then you can get Valgrind to give you function names, file names and line numbers where it happens.  Even if those aren't the cause of the bug you're looking at you should fix them anyways, since they might start causing bugs in the future.

I should set that up again.  I'm not sure it'll run fast enough without optimization, and their page says "Use of -O2 and above is not recommended as Memcheck occasionally reports uninitialised-value errors which don't really exist," but in this case...  false positive probably less likely than me screwing something up.

...

It's world gen trade, unfortunately, which is completely different.

I did find one issue with dance skill application at the end, which caused the seed to jump the rails, but that happens after world gen is over when it is finalizing the sites.  There's still a problem, and hopefully I can fix it today.

edit: Fixed the world gen trade problem and had a medium 100y generate the same way three times, so perhaps that's good for now.  Have valgrind running -- it's pretty slow, but manageable, and it seems to be logging further points of interest, so I'll keep messing with that for a bit before trying chroot.
« Last Edit: July 03, 2016, 03:40:42 pm by Toady One »
Logged
The Toad, a Natural Resource:  Preserve yours today!

Max™

  • Bay Watcher
  • [CULL:SQUARE]
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #397 on: July 03, 2016, 11:33:42 pm »

Did another bitness comparison with 25k pop cap instead of 15k like the first time, went to 300 years instead of running for a set time.
Spoiler (click to show/hide)
Code: [Select]
test64
start: 10:38:30
stop: 10:54:01
finished: 10:54:34 (year 300)
16:04 total worldgen

64 bit pops:
>60553 Dwarves
>32485 Humans
>51199 Elves
>36119 Goblins
>5738 Kobolds
>Total: 186094


Code: [Select]
test32
start: 10:56:30
target: 11:12:01 (year 286)
stop: 11:13:24
finish: 11:14:05 (year 300)
18:05 total worldgen

32 bit pops:
>54795 Dwarves
>28097 Humans
>45384 Elves
>27181 Goblins
>8280 Kobolds
>Total: 163737

Wound up with 23k higher population on the 64 bit world despite finishing nearly 2 minutes earlier than the 32 bit world. The extra two minutes were all from year 286 to 300, which is yet another data point towards the later years being faster on 64 bit.
Logged
Engraved here is a rendition of an image of the Dwarf Fortress learning curve. All craftsdwarfship is of the highest quality. It depicts an obsidian overhang which menaces with spikes of obsidian and tears. Carved on the overhang is an image of Toady One and the players. The players are curled up in a fetal position. Toady One is laughing. The players are burning.
The VectorCurses+1 tileset strikes the square set and the severed part sails off in an arc!

ChangelingVenom

  • Escaped Lunatic
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #398 on: July 04, 2016, 11:18:46 am »

Did another bitness comparison with 25k pop cap instead of 15k like the first time, went to 300 years instead of running for a set time.
...
Wound up with 23k higher population on the 64 bit world despite finishing nearly 2 minutes earlier than the 32 bit world. The extra two minutes were all from year 286 to 300, which is yet another data point towards the later years being faster on 64 bit.
Thanks Mat for the !!SCIENCE!! C:
Logged

int_ua

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #399 on: July 04, 2016, 12:00:14 pm »

I looked at the chroot stuff...  and it just said "then you build the kernel as usual".  I never did that (installed Ubuntu from an iso), so I don't really know what to do.  I'm not sure I'm Linuxy enough to accomplish any of these methods.

If you already have 64bit Ubuntu installed these commands should setup the needed chroot for you (replace trusty with precise everywhere if you want 12.04 instead of 14.04):

Code: [Select]
sudo apt-get install ubuntu-dev-tools
mk-sbuild --arch=i386 trusty # Currently, first time it needs to be executed twice, unfortunately, please comment if you know how to omit this.
mk-sbuild --arch=i386 trusty

# Allowing the same home folder to be used
echo "$HOME                 /home/$USER  none  rw,bind  0  0" | sudo tee -a /etc/schroot/sbuild/fstab

Then you can use the chroot with just
Code: [Select]
schroot -c trusty-i386After that command you should be in the same home directory, but in a different ubuntu "installation", where you can install a completely different set of packages (well, in that case it will be the same set, but with different arch) and should be able to build the game with the same script you've used before. But notice that it won't have sudo by default, you'll have to manage it with another command, executed from the main system, not inside the chroot (using a different tab or TTY for that may be convenient):
Code: [Select]
sudo schroot -c source:trusty-i386 -u root
In my case the basic chroot took only 670 Mb of space:
Code: [Select]
$ sudo du -sh /var/lib/schroot/chroots/
670M    /var/lib/schroot/chroots/

With default bash prompt settings ($PS1) you should easily differentiate between chroot and non-chroot sessions by a prefix in parentheses:
Code: [Select]
(trusty-i386)~ $
If you don't have 64bit Ubuntu installed yet, I'd recommend Lubuntu http://cdimages.ubuntu.com/lubuntu/releases/trusty/release/ in this particular case, because it's still have a desktop UI but that takes much less resources.
« Last Edit: July 04, 2016, 12:10:12 pm by int_ua »
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Dwarf Fortress 0.43.04 Released
« Reply #400 on: July 04, 2016, 01:09:50 pm »

I already followed the instructions before trusty replaced precise...  hopefully that's not a huge issue.  I installed the packages that came up, and I have a build running.  I'm not sure if there are going to be problems at link, but promising so far!

edit: http://www.bay12games.com/dwarves/redist/df_32test_linux.tar.bz2

This doesn't run from the 64-bit linux (can't find libSDL-1.2.so.0 and many others -- due to missing i386 versions?  not sure).  From inside the chroot, it only runs if I switch to TEXT mode, and the audio fails.  I'm not sure how much of that has to do with the configuration of the chroot vs other problems, or what I can fix.
« Last Edit: July 04, 2016, 02:20:08 pm by Toady One »
Logged
The Toad, a Natural Resource:  Preserve yours today!

SatelliteOfLove

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #401 on: July 04, 2016, 02:46:54 pm »

Thanks again for all of the hard work, Toady (et al.).  Players who are normally on Linux-based machines (such as myself) sincerely appreciate it.
Logged

Cexp

  • Escaped Lunatic
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #402 on: July 04, 2016, 03:16:25 pm »

http://www.bay12games.com/dwarves/redist/df_32test_linux.tar.bz2
Seems to work for me on 32-bit Ubuntu Saucy (13.10), at least as well as the previous release did in terms of needed libs (SDL and audio do work).
Logged

int_ua

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress 0.43.04 Released
« Reply #403 on: July 04, 2016, 04:12:24 pm »

I already followed the instructions before trusty replaced precise...  hopefully that's not a huge issue.
Not an issue at all for 9 months, until April 2017: https://wiki.ubuntu.com/Releases

This doesn't run from the 64-bit linux (can't find libSDL-1.2.so.0 and many others -- due to missing i386 versions?  not sure).  From inside the chroot, it only runs if I switch to TEXT mode, and the audio fails.  I'm not sure how much of that has to do with the configuration of the chroot vs other problems, or what I can fix.
It works great, including sound, world generation and embark tested on the same 64bit system with 32bit libraries I've used to play DF before. I'm sure it's the missing i386 libraries in your case. As for running in the chroot - yeah, because there's no graphical server (X server) in the chroot and it doesn't have access to the one that's on the main system. Not sure how to make it work with graphics from chroot, do you need it for testing?
« Last Edit: July 04, 2016, 04:15:04 pm by int_ua »
Logged

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: Dwarf Fortress 0.43.04 Released
« Reply #404 on: July 04, 2016, 04:34:50 pm »

Nah, I just wanted to post what I was seeing in case it was broken.  So I guess that's it for 32?  I'm messing around with valgrind some more for the day, and I can pull together a giant all-versions official release for tomorrowish to see how painful it is.
Logged
The Toad, a Natural Resource:  Preserve yours today!
Pages: 1 ... 25 26 [27] 28