v50 Steam/Premium information for editors
  • v50 information can now be added to pages in the main namespace. v0.47 information can still be found in the DF2014 namespace. See here for more details on the new versioning policy.
  • Use this page to report any issues related to the migration.
This notice may be cached—the current version can be found here.

User:DDR

From Dwarf Fortress Wiki
Jump to navigation Jump to search

About Me[edit]

I am a game developer living in beautiful British Columbia, Canada. Check out some other games I have been involved in, such as the Battle for Wesnoth or Frogatto (an old school platformer with nice graphics). If you would like to talk to me, leave a comment on my talk page!

Proposals[edit]

'cascade' simple cave-in system: http://www.bay12forums.com/smf/index.php?topic=58416.0

Stories[edit]

Rakustsherik, the farm outpost:
http://www.bay12forums.com/smf/index.php?topic=78025.msg2007768#msg2007768
"I am concerned that so many deaths were caused by TRIPPING OVER LIVESTOCK!?!"
"Very well written, if brief. Good work."
"Great story. Laughed myself to tears. Many thanks."

Art[edit]

Unknown curses 12x12 & Markvii Walls.png An edition of the unknown curses 12x12 tileset with diagonal walls from the Markvii tileset. Rock doors are unknown curses, as are arrows. (Arrows are absolute logs in Markvii.) The fonts mix fairly well. Unknown curses 12x12 & Markvii Walls example screenshot.jpeg
Above: The Font A dwarf at archery practice. (He died later.)
Unknown curses 12x12 & Markvii Walls T junction edit.png A variant of the above font with smooth T-junction walls. Unknown curses 12x12 & Markvii Walls DDR edit sample.png
Above: A version with flat T-joints. Smooth wooden walls, a bedroom in the sky.

AHK Scripts[edit]

Dwarf Fortress General AHK Script[edit]

These AutoHotKey scripts (ahk scripts) contains hotkeys that automate some repetitive tasks, such as selecting trade goods and designating 100 z-levels of up/down stairs. If any problem or key conflicts are encountered, please leave me a message on the talk page. If you'd like to suggest a new hotkey, you can leave me a message on the talk page.

Examples[edit]

Trading at a depot is conductive to RSI, especially for trades of over 20,000☼. If you've got your depot set up so that it draws from an immediate stockpile which only accepts trade goods, you can hold ctrl-enter to select everything. (So, basically, this presses the select and down key for you as long as you hold the key combo.) Pressing ctrl-page down when you have a leather or cloth barrel from a trader selected selects that barrel for trading, and advances to the next cloth or leather barrel. Much easier!
Now, let's say you want to move up couple dozen z-levels, for you are at the bottom of a large cavern. Normally, this is just a matter of holding shift-<, but it can take a few seconds to scroll up. If you press ctrl-shift-<, you'll go up TEN z-levels for every press of the button. Over short distances of 20 z-levels, this reduces a several second wait to a second-long process, giving up to a 75% savings of time! Over long-distances, however, this hotkey is only slightly quicker, maybe 25% or so.
Ah, designating rooms. It's both fun and kind of boring. My least favourite is designating bedrooms for my dwarfs. Sure, I could put them in a barracks, but where's the class? (Besides, they'll clean up their clothes if you give them their own room.) You can one-press designate two styles of room, and for one of the styles you can also invoke automatic furniture layout and automatic make room.

The installation of AHK and this Script (for beginners):[edit]

Grab the installer from http://www.autohotkey.com/, and install it.

Next, copy the script you want below.

Nip over to Windows Explorer. Go to where you want to store the script, and, from the right click menu select new -> autohotkey script.

Edit the script (it's in the right-click menu). Click in the text that appears, then press ctrl-a, ctrl-v, ctrl-s, ctrl-f4.

Now, run the script by double-clicking on it. Now, when you press the key combo, it will start the script.

Fortress Mode Keys:[edit]

; AutoHotkey Version: 1.x
; Language: English
; Platform:	WinXP
; Author: D. D. Roberts <robertsdavidddr@gmail.com>
; Version: MIN-1.0
; License: GNU GPL

; Script Keys:
;	These keys aim to speed up the playing of Dwarf Fortress by automating some common tasks.
;	
;	Furnish & Room:	
;~	w + arrow key	.	.	Position a single wall segment. Hold w and an arrow key to build that wall and advance a tile.
;~	g + arrow key	.	.	Position a floor grate. Press g and {direction} arrow key to build that grate and position a floor grate to the {direction} of the first grate.
;	
;	Misc.:	
;	alt <, >	.	.	.	Move up or down ten levels. Very handy for 150 z-level forts. (Or, alt-shift-,, ..)
;	ctrl enter	.	.	.	Enter select, and advance the cursor with the down arrow key.
;	alt enter	.	.	.	Enter select, enter confirm, and advance the cursor with the down arrow key.
;	ctrl number pad plus.	Enter select, and advance the cursor with the number pad plus key.
;	ctrl page down	.	.	Select current barrel or bin in trade screen (traders' side), and advance to the next barrel.
;	alt number pad plus	.	Press keys tiq+. For use selecting squads to train at a baracks.

#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
SetKeydelay, 20

#SingleInstance force

;WinWaitActive, Shortcut to dfvdig.exe
;Send, {ENTER}
;WinActivate, Dwarf Fortress
;Reload

#IfWinActive Dwarf Fortress

!+.::Send {> 10}
Return
!+,::Send {< 10}
Return

^Enter::
Send {ENTER}{DOWN}
Return
!Enter::
Send {ENTER}{ENTER}{DOWN}
Return

^PGDN::
Send, {ENTER}{PGDN}{UP}{UP}
Return

^NumpadAdd::
Send {ENTER}{NumpadAdd}
Return

!NumpadAdd::
Send, tiq{+}
Return

;	-- Begin G Section --
g & Right::
Send, {ENTER}
Sleep, 300
Send, {ENTER}{SHIFTDOWN}g{SHIFTUP}{RIGHT}	;Grate in direction. Traps g, though, so re-g code is needed.
Return

g & Left::
Send, {ENTER}
Sleep, 300
Send, {ENTER}{SHIFTDOWN}g{SHIFTUP}{LEFT}	
Return

g & Up::
Send, {ENTER}
Sleep, 300
Send, {ENTER}{SHIFTDOWN}g{SHIFTUP}{UP}	
Return

g & Down::
Send, {ENTER}
Sleep, 300
Send, {ENTER}{SHIFTDOWN}g{SHIFTUP}{DOWN}	
Return


+g::Send, {SHIFTDOWN}g{SHIFTUP}	;Send g if g pressed; otherwise g won't work. Script traps g in above trigger.
Return
g::Send, g
Return


;	-- Begin W Section --
w & Left::
Send, {ENTER}
Sleep, 250
Send, {ENTER 2}{LEFT}
Return

w & Up::
Send, {ENTER}
Sleep, 250
Send, {ENTER 2}{UP}
Return

w & Right::
Send, {ENTER}
Sleep, 250
Send, {ENTER 2}{RIGHT}
Return

w & Down::
Send, {ENTER}
Sleep, 250
Send, {ENTER 2}{DOWN}
Return

+w::Send, {SHIFTDOWN}w{SHIFTUP}
Return
w::Send, w
Return