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] 2 3 ... 34

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

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Capitalism, ho!
    • View Profile
FotF: Dwarf Fortress 40d19
« on: March 04, 2010, 05:34:49 pm »

This is not DF 2010. This is merely an update to 40d providing better performance and some other enhancements. It will be part of '10, however, it has no gameplay changes.

As you may be aware, Dwarf Fortress' approach to OpenGL leaves something to be desired. To the point of my writing terrible hacks like DF Accelerator, even..

At any rate, Toady has decided to do something about that, and did it by releasing the relevant source code so others could help.

This has been done: The code has been converted to use SDL by Bernard Helyer, and the output and input code was then optimized and enhanced by yours truly. It is almost complete. However, for Toady to accept the code into the next version of DF, your assistance is needed: It must be tested. This takes many dwarves.

Known bugs
- Adventure mode is pretty much broken, and going to stay that way until DF2010.
- Image export is generally broken; some don't work, some actually freeze the game. Don't try it.
- Graphical tilesets are discolored in 2D and shader mode, being slightly too dark. YMMV on whether this is bad or not. Cookie to whoever fixes data/shader.fs for me.
- Graphical tilesets flicker in shader mode. Epilepsy-inducingly so.
- Graphical tilesets are /incredibly slow/ in shader mode. But you wouldn't do that anyway, right? Think of the epileptics.
- Shader mode does not work on ATI cards. Can't really fix myself, but the shader source is in data/shader.fs/vs; it's loaded on startup (and when resizing the window).
- The game will crash doing certain actions on certain screens, unrelated to graphics. The full list is not known, but there are crashes at least on the farm plot seed selection screen.
- You may find that the game crashes when performing particular in-game actions on the DF user interface, such as viewing a dwarf's thoughts with a very large window, or switching between seasons on the farm-plot menu with the cursor in a particular position. Such bugs are not 40d# bugs, but are the result of somewhat haphazard adaption of core DF code to 40d# and will be fixed in the DF2010 integration phase.
- Bridge linking is broken.


Download links
Windows: http://www.bay12games.com/dwarves/df_28_181_40d19_2_win.zip (Updated Mar 6)
Linux: http://www.bay12games.com/dwarves/df_28_181_40d19_linux.tar.bz2
OS X: http://www.bay12games.com/dwarves/df_28_181_40d19_osx.tar.bz2
For linux users, the following link will contain a tarball with the newest fixes, which might be officially released in 40d20, assuming there is one. It must be unpacked on top of the 40d19 tarball.
Linux 40d19 HEAD: http://brage.info/~svein/df-40d19-head.tar.bz2 Updated Mar. 5

For users on Linux and OS X, run the df script, don't run the dwarfort.exe executable directly.

Please download it, run it, and test with all the different tilesets and grid sizes your hearts desire. Graphics sets, too.

New features in 40d19 (vs. 40d)
- Translucent tilesets are supported, using PNG.
- The DF window can be resized on the fly. This can be turned off in init.txt if you like.
- The grid size is autogenerated on startup; such init.txt settings are ignored.
- Current desktop size is used for fullscreen size if fullscreen resolution is set to 0x0.
- Window resolution is measured in tiles instead of pixels, if you use a size below 200x200.
- The DF window can be zoomed on the fly using the mouse wheel, though only in opengl mode.
- The keyboard input system has been totally rewritten:
* You can bind multiple keys to one command
* You can create keyboard macros
** Default keybindings:
** Ctrl-r to record (or stop recording) a macro
** Ctrl-p to play the currently active  macro
** Ctrl-s to save the active macro
** Ctrl-l to load a macro as the active one
* Input bindings are divided into sections
- A 2D mode has been added, for people with bad opengl drivers.
- A text mode has been added (Linux/OS X only), for SSH or console use.
- A shader mode has been added, for people with DX10-compatible GPUs. DX10 or windows are not required.
- Lots of bugfixes and performance improvements.
Upcoming features in 40d20/40d19-HEAD
* Quite honestly nothing.

Bug-tracker
There should be a list of known bugs at http://github.com/Baughn/Dwarf-Fortress--libgraphics-/issues. Feel free to add yours there when you report it.

Tips and tricks
- If the default settings don't work, 2D almost certainly will. Make sure to try it.
- Make sure you test all the combinations for buffers/partial printing that Toady suggests in init.txt. Read the comments in that file, too.
- If you're having problems on windows, if possible, try running it on linux; this will provide information on whether it's hardware-dependent or software. Vice versa, too.

Linux
- If double-clicking on the script doesn't work, make sure you try it from a terminal so you can read the error output
- Required libraries include SDL and SDL_image, mainly. Make sure you have a 32-bit version of these, if you're on a 64-bit linux.


Source code
For perennially curious programmers, the source code (that is still under active development) can be found at git://github.com/Baughn/Dwarf-Fortress--libgraphics-.git. It uses the git version-control system, and can also be seen in a browser at http://github.com/Baughn/Dwarf-Fortress--libgraphics-/tree/master.

Compiling this code gives a functional DF, but it can only be compiled on Linux.
« Last Edit: March 19, 2010, 04:41:28 pm by Baughn »
Logged
C++ makes baby Cthulhu weep. Why settle for the lesser horror?

bombcar

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #1 on: March 04, 2010, 06:10:21 pm »

Yay!
Logged

peterix

  • Bay Watcher
    • View Profile
    • Dethware
Re: FotF: Dwarf Fortress 40d19
« Reply #2 on: March 04, 2010, 06:20:16 pm »

Another hacking session ahead!  ;)

Sizik

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #3 on: March 04, 2010, 06:38:13 pm »

(note: this is a 20 y.o. fort with over 100 dwarves, tons of animals and stone, with a running water fountain and waterfall.)

40d:
PARTIAL_PRINT:NO: 5 FPS
PARTIAL_PRINT:YES:15: 7 FPS

40d19:
STANDARD: 7 (7) / 7
2D: 7 (7) / 7
2DSW: 7 (7) / 7
2DASYNC: 7 (7) / 7
PARTIAL:1: 7 (7) / 7
ACCUM_BUFFER: 7 (7) / 7, excessive flickering
FRAME_BUFFER: 7 (7) / 7
VBO: 7 (7) / 7
SHADER: error:
Spoiler (click to show/hide)

Computer Info:
Spoiler (click to show/hide)
Logged
Skyscrapes, the Tower-Fortress, finally complete!
Skyscrapes 2, repelling the zombie horde!

Thndr

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #4 on: March 04, 2010, 06:54:19 pm »

Any chance of having a TEXT mode for windows, other than SSH/Telnet into a linux machine running DF?
Logged

CobaltKobold

  • Bay Watcher
  • ☼HOOD☼ ☼ROBE☼ ☼DAGGER☼ [TAIL]
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #5 on: March 04, 2010, 06:58:38 pm »

mmm, terminal output. [fillerpost to put in new-replies]

In the future could you link to the new thread from the end of the old one or something? The future is now!
« Last Edit: March 04, 2010, 07:11:18 pm by CobaltKobold »
Logged
Neither whole, nor broken. Interpreting this post is left as an exercise for the reader.
OCEANCLIFF seeding, high z-var(40d)
Tilesets

Diablous

  • Bay Watcher
  • [PREFSTRING:avatar's cuteness]
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #6 on: March 04, 2010, 07:12:22 pm »

mmm, terminal output. [fillerpost to put in new-replies]

Same here.
Logged
Quote from: Solifuge
A catgirl, whom oft it would please
To dine on a pizza, with cheese,
Thought it was quite fine
To be partly feline,
Excepting the hairballs and fleas.

Baughn

  • Noble Phantasm
  • The Haruhiist
  • Capitalism, ho!
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #7 on: March 04, 2010, 07:37:01 pm »

Any chance of having a TEXT mode for windows, other than SSH/Telnet into a linux machine running DF?
It seems unlikely. What do you want it for?
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 #8 on: March 04, 2010, 07:54:15 pm »

Have the crashes on various screens (farm plot, and I think there was another) been fixed?  If not, they should probably be listed among the known bugs.
Logged

Andir

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #9 on: March 04, 2010, 08:24:49 pm »

subscribble
Logged
"Having faith" that the bridge will not fall, implies that the bridge itself isn't that trustworthy. It's not that different from "I pray that the bridge will hold my weight."

Thndr

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #10 on: March 04, 2010, 08:54:37 pm »

Any chance of having a TEXT mode for windows, other than SSH/Telnet into a linux machine running DF?
It seems unlikely. What do you want it for?
No reason specifically. Just figured it'd be neat.
Logged

FatedTemp

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #11 on: March 04, 2010, 10:04:37 pm »

Using d19 on Windows 7 the game freezes up if I try to resize the window, the game keeps running (in that it uses CPU/Mem) but the screen does not change and it doesn't respond to key presses. Resizing by dragging or pressing the "expand" caption button both cause this issue. d18 had no such issue with resizing. Screenshot:
Spoiler (click to show/hide)
Logged

colorlessness

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #12 on: March 04, 2010, 10:10:50 pm »

Looks good, all the graphics modes work for me (except SHADER, but I knew that wouldn't).  Just FYI, libgraphics.so now breaks a default SELinux implementation (on Fedora 12) due to requiring text relocation.  Though this is easy enough to fix by changing the file context.
Logged

Quietust

  • Bay Watcher
  • Does not suffer fools gladly
    • View Profile
    • QMT Productions
Re: FotF: Dwarf Fortress 40d19
« Reply #13 on: March 04, 2010, 10:36:19 pm »

It looks like you've finally hit the mark - this one's just as fast as 40d, if not faster in a few places.

System: Core 2 Quad 2.4GHz, 512MB Geforce 8800GT with v196.21 drivers, Windows XP 32-bit, 3GB RAM

40d, PARTIAL_PRINT:NO - 21fps (38 seconds)
40d, PARTIAL_PRINT:YES:0 - 23fps (36 seconds)

40d18, STANDARD - 14fps (57 seconds)
40d18, PARTIAL:0 - 15fps (51 seconds)
40d18, ACCUM_BUFFER - 15fps (50 seconds)
40d18, FRAME_BUFFER - 15fps (52 seconds)
40d18, VBO - instantly crashes on startup
40d18, 2D - 10fps (75 seconds)
40d18, 2DHW - 11fps (73 seconds)
40d18, 2DASYNC - 11fps (73 seconds)

40d19, STANDARD - 21fps (38 seconds)
40d19, PARTIAL:0 - 23fps (34 seconds)
40d19, SHADER - 22fps (37 seconds)
40d19, ACCUM_BUFFER - 23fps (36 seconds)
40d19, FRAME_BUFFER - 22fps (37 seconds)
40d19, VBO - 22fps (36 seconds)
40d19, 2D - 23fps (36 seconds)
40d19, 2DHW - 23fps (36 seconds)
40d19, 2DASYNC - 22fps (36 seconds)

In all (non-40d) cases, SINGLE_BUFFER was disabled - enabling it would always result in horrible flickering. FPS_CAP was set to 100 and G_FPS_CAP was set to 20. My window size is 1440x800 (desktop 1600x1200x32) using a 9x16 font, for an effective resolution of 160x50 characters. Also, ARB_SYNC was enabled, and my video card doesn't seem to mind it.

One other minor thing I've noticed is that, on startup, the window will occasionally be positioned partially off the right edge of the screen - straight 40d never seemed to do that.
« Last Edit: March 04, 2010, 10:42:07 pm by Quietust »
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.

Xgamer4

  • Bay Watcher
    • View Profile
Re: FotF: Dwarf Fortress 40d19
« Reply #14 on: March 05, 2010, 12:12:56 am »

Not really a bug, per-say, but at the default windowed resolution with fps display on, the fps screen covers everything in the world name except for "the".

Logged
insert something mind-blowing/witty here*
Pages: [1] 2 3 ... 34