Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  

Poll

Having tested both 2D and STANDARD, how is 40d19 compared to 40d?

Faster, no (unknown) problems
Faster, problematic
Same speed, no (unknown) problems
Same speed, problematic
Slower, no other (unknown) problems
Slower, problematic
Doesn't work at all

Pages: 1 ... 3 4 [5] 6 7 ... 34

Author Topic: FotF: Dwarf Fortress 40d19  (Read 163401 times)

bombcar

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #60 on: March 05, 2010, 02:27:38 pm »

You got ncurses working.

Perhaps it would be worth doing the same for Windows. ;)
Logged

lizard

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #61 on: March 05, 2010, 02:34:22 pm »

TEXT no longer requires a restart after exit, which is nice.
Logged

Quietust

  • Bay Watcher
  • Does not suffer fools gladly
    • View Profile
    • QMT Productions
Re: FotF: Dwarf Fortress 40d19
« Reply #62 on: March 05, 2010, 02:56:33 pm »

If I had a Linux system on which to test DF, I'd try it out, but all I've got is Windows XP, where it seems to be working just fine.
With an 8800GT with nearly-latest nvidia drivers, all of the modes work (including SHADER) and are about as fast as 40d; an old Radeon X1300/X1550 crashes when trying to use FRAME_BUFFER (in atioglxx.dll, almost certainly due to absolutely ancient drivers) or when choosing SHADER or enabling ARB_SYNC ("unknown module", probably because it isn't DX10 compatible), but everything else works and is only slightly slower than 40d (8-9fps on Reinhammers, compared to 9-10 in 40d).
Logged
P.S. If you don't get this note, let me know and I'll write you another.
It's amazing how dwarves can make a stack of bones completely waterproof and magmaproof.
It's amazing how they can make an entire floodgate out of the bones of 2 cats.

isitanos

  • Bay Watcher
  • Seasonal river flood nostalgic
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #63 on: March 05, 2010, 03:04:58 pm »

if its a matter of having toady compile using code only he has access to, it might be possible to make a blind version compile with some trickery. i'd have to know more about the tools toady is using to do his development (not the code itself), but this might make development of your half easier.

Oh yeah, something like an automated build server that Baughn sends his code to (possibly through svn), and minutes later he receives a new DF binary linked with his code? Automatic 'daily' builds are not unheard of...
If Toady shares his makefile and other tool details, I'm sure someone could set up such a server for him, and then he can host it at home at specific hours. I don't see how he could host it elsewhere without endangering the source code, or paying good money for an efficient and secure linux host.

Edit: on an unrelated note Baughn, to help testing you should probably put a benchmark fortress for download. It would make FPS reports a little bit more meaningful and comparable.
« Last Edit: March 05, 2010, 03:14:59 pm by isitanos »
Logged

Sunday

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #64 on: March 05, 2010, 03:18:34 pm »

That's a good idea (the benchmark fortress idea).

I'm playing on a mac, and I seem to be getting pretty similar performance to what I was getting with d18 - which is much higher than any of the previous d#s. 
Logged

Felblood

  • Bay Watcher
  • No, you don't.
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #65 on: March 05, 2010, 03:40:58 pm »

Okay, I haven't messed with anything since D16(where everything was too far to the left), but here's the tests against 40d.

SHADER: Instant crash. There's a crash report file here.

Spoiler (click to show/hide)

PARTIAL: Runs much faster (99 FPS vs. 43 FPS in 40d), however everything is really tiny. The sprites are about half of normal size, and quite distorted. Even though BLACKSPACE is OFF, everything is displayed in a tiny square at the bottom of a large black field.

2DASYNC: Runs considerably faster 72 FPS vs. 43 in D40, however there are a number of weird artifacts.

Everything is too far to the left. As in, the three leftmost columns are missing from the screen. This doesn't make the game unplayable, but it's really annoying, as I can't read artifact descriptions properly.EDIT:Playing in windowed mode solves this, and I can just resize the window to fill the whole screen, which is almost as good.

When you open the menu, any creatures represented by graphics set sprites are not hidden. The fortress itself is blacked out, but my dwarves still show up, printed behind the menu. If you exit to the main menu, these dwarves persist, floating in the blackness of the title screen.
« Last Edit: March 05, 2010, 03:49:32 pm by Felblood »
Logged
The path through the wilderness is rarely direct. Reaching the destination is useless,
if you don't learn the lessons of the dessert.
--but you do have to keep walking.

spokehedz

  • Bay Watcher
  • Boy Genius
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #66 on: March 05, 2010, 03:42:23 pm »

subscribble
You know, you don't have to comment to subscribe to a thread... you can click on the 'notify' button at the top and bottom of the thread.
Logged
Quote from: LordBaxter
Once a stair fell, and rather than knock him one or two z levels down, as usually was the case, he went rolling down the central staircase, hit the bottom and exploded.

darkrabite

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #67 on: March 05, 2010, 03:46:27 pm »

When the last time the benchmark fortress idea was brought up, he said it was a great idea, and asked for someone to provide one afaik.

I think to be a good test of graphics and hot pathing code or what not, it should have a couple waterfalls, rivers that sort of thing and not just 5000 pets. but Baugn would have more to say on that side.
Logged

koitsu

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #68 on: March 05, 2010, 03:47:32 pm »

Follow-up to the previous d18 thread and this question:

Quote
Quote from: Mondark on March 04, 2010, 02:36:09 PM
    or use GNU Screen to allow other people to watch, or interact in real time with the game.

Please explain how you did this. I desire it.

This really isn't the job for GNU screen -- it's a job for dgamelaunch!  I'm certain it would work with Dwarf Fortress in TEXT/ncursesw mode.

Fact of the matter is: GNU screen is a pile of garbage solely because it tries to do terminal *translation* rather than leaving your terminal alone.  For example, you connect to a machine via PuTTY (thus emulating xterm), and run screen -- your TERM becomes "screen" because that's all screen truly understands, while behind-the-scenes it's translating termcap/terminfo sequences from screen to xterm.  You detach, SSH into the machine using SecureCRT with Linux (cons25) or VT100 (vt100) emulation, and do "screen -r".  Now screen starts trying to translate from screen to cons25 or vt100.  All underlying applications run under screen think your terminal is "screen", not what you're actually using.  screen has its own termcap/terminfo entry as well, and all it takes is a single bug in its emulation code to completely screw you.  screen completely screws up BCE (hope you like lots of whitespace on the end of your lines when copy-pasting!), padding (I'm not talking about "string padding"; read up on what padding is for terminals), and in general just makes a big mess of everything.  Stay away from it.

"Okay smart-arse, since you have all the answers, what do you use?"  I don't use anything; I'd rather have 50 PuTTY windows open in my GUI than 1 with some crappy terminal translation engine that destroys terminal capabilities.  If you absolutely must use something that's screen-like, use tmux.

Now if only someone would make FreeBSD binaries (without Linux emulation please) of DF... ;-)  I'd be more than happy to help with that if need be, but keep in mind UTF-8 doesn't work so well on FreeBSD 6/7/8/9 (iso-8859-1 with 8-bit clean ttys works fine).
Logged
Making life hard for others since 1977.

darkrabite

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #69 on: March 05, 2010, 03:51:37 pm »

if its a matter of having toady compile using code only he has access to, it might be possible to make a blind version compile with some trickery. i'd have to know more about the tools toady is using to do his development (not the code itself), but this might make development of your half easier.

Oh yeah, something like an automated build server that Baughn sends his code to (possibly through svn), and minutes later he receives a new DF binary linked with his code? Automatic 'daily' builds are not unheard of...
If Toady shares his makefile and other tool details, I'm sure someone could set up such a server for him, and then he can host it at home at specific hours. I don't see how he could host it elsewhere without endangering the source code, or paying good money for an efficient and secure linux host.

Assuming toady has his source control not on his workstation, it should be trivial to have an on-demand compile with decently modern hardware.

if toady doesn't have the infrastructure to do this, im sure the community could cobble together a decent enough machine w/ hdd raid to run as a server for this. 

It can sometimes be easier to donate an old video card or motherboard than donate $50...  =)

i like this idea and i'll see what i can figure out just rolling it around in my head.
Logged

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #70 on: March 05, 2010, 03:58:57 pm »

I think I've figured out what's causing the recent spate of crashes and trouble on windows, though.

Turns out, opengl extension function addresses are /dynamic/, and may change from context to context. I didn't know that. Means I have to call glewInit once per context reset.. and I recently got clever and added a variable to prevent that, to speed things up a little.

Also, the context is reset a total of four times on startup, once per screen resize.. you get the idea. See where I'm going with this?

I'll ask Toady for a recompile on windows only with that two-liner fix (should be cheap), and then we'll see. d19-2 coming up, I hope.

--

And I /can/ run my edited code, it's just.. "just on linux". I've investigated the possibilities of doing it with a DLL on windows, and it seems like far, far more work than is reasonable. OS X would be almost as simple as linux, though, so I'll look into that.

--

Benchmark fortress is still a good idea, but I don't have the time to make one. If one of you can find a good one - one with lots of graphics activity (rivers/waterworks/waterfalls are good), with ~55-100FPS (so it's not just all simulation and no graphics), I'll link to it in the first post.
« Last Edit: March 05, 2010, 04:01:56 pm by Baughn »
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

The-Moon

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #71 on: March 05, 2010, 04:07:52 pm »

The-Moon: Believe it or not, I did something like that once too. Mine used opengl, mind you.

And then I tried to actually link it with DF, and discovered that things were not as simple as they seemed.

They possibly *should* be, but I'm laboring under the restriction that I must not change any interface severely, under pain of the compiled code no longer working with the binary-only DF executable. I can also only test it or debug on linux.

This is admittedly a great improvement on what I had before 40d12, when the only way to test anything at all was to send the code to Toady, and have him compile it. Sometimes there'd be compilation errors.

Please, don't assume I don't know what I'm doing on the programming side of things. It's the interface side of things - DF and windows' notion of opengl - that are giving me nightmares.

Btw im sorry if i was rude to you, im sure its alot of work to do what your doing. I was tired at the time...

But even if you optimize the graphical engine to use opengl and such, that will never be enough to fix the speed problems df has. The only thing which can fix that is using multicores.

Honestly DF does more then most ps3 games, and ps3 games run on multicores. DF needs the same.

We honestly should be putting more effort into setting up some way to let toady multicore DF without too much of a head ache. Thats what we really should be putting our efforts into.

But again im sorry if i was being rude, i was tired at the time and not thinking straight my bad :(

Edit:On that note, i should try setting up some code for using mutlicores, i guess thats where my best efforts could be put to use. I dont in fact have a multi core processor tho, so coding it be a bit hard....

It could hurt anyways if i did start doing some multi core coding. :)
« Last Edit: March 05, 2010, 04:11:55 pm by The-Moon »
Logged
There is absolutely no time, to be taking time for granted. ~Busta Rhymes

dnabios

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #72 on: March 05, 2010, 04:25:14 pm »

Quote:
Spoiler (click to show/hide)
Well, I haven't posted in a 40d## thread because there is little I can think of saying besides "good work"...but the updates you have done so far have look extraordinary on my end.  Without sacrificing any actual game features (ie. Temperature, Weather, Economy set to YES) and with:
Partial:0
Thread Priority:High
FPS:0 (Unlocked)

I'm getting:
Spoiler (click to show/hide)
At startup.
FPS:  138,423
Spoiler (click to show/hide)
A "typical" DF game start (3x3, river with HFS, "play now").
FPS:  1,520
Spoiler (click to show/hide)
The most brutal starting conditions I could come up with (16 x 16, as many Z levels as I could find (19), every game feature present, spending all my starting points on cats (you get 187)).
FPS:  83
Spoiler (click to show/hide)
The Reinhammers Fortress posted earlier (213 dwarves, 181 animals, no magma I could see, but water was moving/being pumped).
FPS:  27

I haven't had time to play up a whole new fortress (I just deleted d18 and dropped down d19), but assuming d19 and d18 perform the same I was getting ~120 FPS with a "standard" DF game (100-105 dwarves, ~45 animals, a 3x3 location with a River and HFS).  If the 2010 changes don't jazz up the FPS (and you've got about 20 to spare) people with a similar set-up could play a normal fortress all the way through maintaining an average FPS of 100 the entire time.  Which is what I've been doing with the 40d.## series so far.

And that's pretty darn impressive.

I do get an odd little bit of graphical corruption in non-play screens (like the status screen or the start screen) where the graphics stick around after closing.
Spoiler (click to show/hide)
Adjusting Partial:1 or Partial:20 or STANDARD doesn't seem to help with this.  This does not happen during gameplay and doesn't really bother me...but FYI since it wasn't in d18 and you're thinking of tweaking the windows version.  Also, you now have to hit enter at the "Ending game..." screen on abandon or it doesn't advance to "Your settlement has been abandoned" (here you can hit enter or space as normal to advance).  d18 did that as well, but I don't think 40d did.  It's not a big deal and may be known.

Computer Info:
Spoiler (click to show/hide)

Edit:  Images more clearly linked to descriptions.
« Last Edit: March 05, 2010, 04:27:50 pm by dnabios »
Logged

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Hiss
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #73 on: March 05, 2010, 04:25:44 pm »

Don't worry, I'm hard to offend. Word of advise, though, since you're apparently not that used to programming:

Everything is harder than it seems. The devil's in the details, and the details are fractal and have tentacles.

Multicore programming, in particular. That's.. well, it /seems/ pretty easy, and it /is/ pretty easy in principle, but it basically doesn't work (without excessive effort) in imperative languages.

Trying to retrofit it into an existing imperatively-languaged program that was never intended for the purpose, such as DF - well, I'd rather face down a rampaging carp.
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

Footkerchief

  • Bay Watcher
  • The Juffo-Wup is strong in this place.
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #74 on: March 05, 2010, 04:27:45 pm »

But even if you optimize the graphical engine to use opengl and such, that will never be enough to fix the speed problems df has. The only thing which can fix that is using multicores.

Honestly DF does more then most ps3 games, and ps3 games run on multicores. DF needs the same.

We honestly should be putting more effort into setting up some way to let toady multicore DF without too much of a head ache. Thats what we really should be putting our efforts into.

We know this isn't a total solution to DF's speed issues.  The reason people are working on this stuff is because it's the part Toady was willing to release.  He's not willing to release the parts of the source that would allow others to work on multithreading, pathfinding, etc.  You've had this conversation before so let's please not derail this thread with it.
Logged
Pages: 1 ... 3 4 [5] 6 7 ... 34