Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 [2] 3 4 5

Author Topic: DFWall - a mass rewall/refloor utility  (Read 5911 times)

LordZabujca

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #15 on: May 01, 2008, 02:26:00 pm »

Nah, this can't be it. DFWall works by comparing graphical patterns of the material names, so it should be extremely mod friendly - also I can't imagine where the race could mess with the construction screen.

I've tried to replicate this bug with no success - my carpenters have built a 3x3 square of walls using only pine logs.

Actually, I think I may see two problems in 2:
a) Make sure that XStart and YStart are setup correctly. You can use the ctrl+m tool (the local colours feature may be sort of buggy at the moment) from the mapmaker to help you find the correct valutes.
b) Check if the keyboard settings in the ini are correct - PageDownButton (scroll the material list down by one page) and ScrollDownButton (scroll the material list down by one item) may not be set correctly just after unzipping for instance.

Both a) and b) may lead to the described behavior - the first one would give false positives when looking for the correct material, while the second would simply make it impossible to actually scroll to the selected material.

[ May 01, 2008: Message edited by: LordZabujca ]

Logged

LordZabujca

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #16 on: May 03, 2008, 04:10:00 pm »

@Tahin: Soo... Did any of that help?
Logged

Tahin

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #17 on: May 03, 2008, 06:52:00 pm »

I'll try that when I'm next booted into windows.
Logged

Nukeitall

  • Bay Watcher
  • HURR DURRR
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #18 on: May 03, 2008, 10:21:00 pm »

I tried like hell, but I couldn't make it work. Care to reword the instructions for the mentally incompetent?
Logged

LordZabujca

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #19 on: May 04, 2008, 02:03:00 am »

Okay, I think I can see a potential source of the confusion. There is a difference between * (as in shift+8), and * on the numpad (just try those in DF), and the same goes for +. So, if you're using the default keyboard settings, go into DFWall.ini and change

PageDownButton = {+}
ScrollDownButton = {=}

to

PageDownButton = {NumpadMult}
ScrollDownButton = {NumpadAdd}

I think I'll make this the default ini setting in the next update.

Tell me if that change helps - and remember that you still need to calibrate XStart and YStart. Use the ctrl+m tool from the mapmaker and you're set.

[ May 04, 2008: Message edited by: LordZabujca ]

Logged

Nukeitall

  • Bay Watcher
  • HURR DURRR
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #20 on: May 04, 2008, 05:56:00 pm »

Well, I can't get it to work. Which isnt to say that It doesn't work, more that I am too stupid to figure it out.

Welp, back to manual flooring.

Logged

LordZabujca

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #21 on: May 04, 2008, 07:06:00 pm »

What exactly doesn't work? Can you mass build floors/walls, only with wrong materials, or not even that? In the first case, does the selector even move, or does it always select the closest material? In the second - can you describe what you are doing and what exactly is happening? Also, what tileset and resolution are you using? Do you use a custom colour scheme? Are you trying to play in full screen? Full screen is sort of supported, but may be hard to setup.

Also for now, lets take it step by step and try to get DFWall to run properly at your computer at all:
1. Download a fresh copy of Dwarf Fortress and unzip it.
2. Unzip your copy of DFWall
3. Make changes to DFWall.ini:

Change:

PageDownButton = {+}
ScrollDownButton = {=}

to

PageDownButton = {NumpadMult}
ScrollDownButton = {NumpadAdd}

Also change XStart and YStart. Those are individual system specific, so the best I can give you is:

XStart=3
YStart=29

for windows XP in 1280x800 with all the visual prettifiers turned ON, and

XStart=3
YStart=22

with all of those turned OFF. Those may or may not work in your case. You can also find those values manually.
STEP I: Start Dwarf Fortress IN A WINDOW. It should start in the upper left part of your screen.
STEP II: Press "PRT SC" or "PRT SCR" or whatever stands for "Print Screen" on your keyboard.
STEP III: Open MS Paint.
STEP IV: Press ctrl+v. If this didn't do anything, go into the "edit" menu and select paste. If THAT didn't help, activate your DF window again and go back to step II.
STEP V: Select the zoom tool.
STEP VI: Zoom in on the upper left corner of your picture.
STEP VII: Find out the coordinates of the pixel I've painted red in the picture below. You can do so by selecting a tool (a pencil will do) and pointing it at that pixel (you can colour it to be certain that it is the right pixel). Its coordinates will be shown on the bar in the lower right part of the MS Paint window.

                   

Those are your XStart and YStart coordinates. Put them in the ini.

4. Now, if you have DF running, skip this step. If not, start DF in a window.
5. Start DFWall. It should be calibrated for the default settings of Dwarf Fortress (well, except for those pesky scroll buttons, but I'll change it in the next update - and we've already solved that issue in step 3).
6. Start a test fort anywhere and tell me if this helped. Also, if it did - import your save into this installation of Dwarf Fortress and enjoy quick and easy mass rewalling while I try to figure out why it didn't simply work in the first place (answering those questions I gave at the top of this post would really help me with that).

Remember! Ctrl+[digit] - save a material under [digit], w+[digit] - build walls with saved material, f+[digit] - build floors with saved material

To build a rectangle: save a material, go into "select tile" mode for walls/floors, select one corner of the rectangle, hold ctrl, go to the opposite corner, release ctrl and press w+[digit] or f+[digit] to start building.
To build a pattern: save the materials, go into "select tile" mode for walls/floors, select the upper right corner of where to build and press ctrl+q to start building.

[ May 05, 2008: Message edited by: LordZabujca ]

Logged

Greiger

  • Bay Watcher
  • Reptilian Illuminati member. Keep it secret.
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #22 on: May 04, 2008, 09:41:00 pm »

Oh, I shoulda checked this tread sooner, this would be awesome for all the surface buildings I was making in my last fortress(at least the first floor).

If you are taking suggestions would it be possible to give it the ability to choose "first construction material with more than 99 available units"?  It would probably have to save what material that is when it starts though.  Good chance that on a big project it may start dipping below 99 mid designate.

Nice work man!

Logged
Disclaimer: Not responsible for dwarven deaths from the use or misuse of this post.
Quote
I don't need friends!! I've got knives!!!

LordZabujca

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #23 on: May 05, 2008, 10:13:00 am »

Oh, right - there were some feature requests to which I've never responded. No harm done I guess, I'll do so now:

quote:
The only thing I'd like to see is if it could possibly detect somehow if you ran out of material partway through the construction and stop it

I could do that very easily, but I don't really want to. Under certain circumstances (DF suddenly lagging in the wrong moment for instance) DFWall won't find the material on the list even though it's there. It's rare, but it happens. As it is now, DFWall will screw up up to two tiles of the construction (skipping one and always building a wall on the next) and then simply continue building as if nothing happened. So if I'd implement this feature the potential for annoyance (caused by sudden inexplicable stops) is greater than if I leave stuff the way it is, or so it seems to me.

I guess I can throw in a toggle in the ini to let the player decide whether he wants to have this or not.

quote:
and also if it could allow for the use of multiple materials (For instance, if I don't really care which wood it uses for a wall. Not sure how this would be done.)

I have no idea how to do that without making everything needlessly complicated (both in terms of code and interface) and considerably slower.

quote:
If you are taking suggestions would it be possible to give it the ability to choose "first construction material with more than 99 available units"? It would probably have to save what material that is when it starts though.

I can do that. You'd still have to save a material that has 99 units available (so that DFWall would know how a "99" looks like), but that should be all.

By the way, did anyone actually manage to get this utility running correctly on their computer, or is it just me? This whole "no reports of success" thing seems to be a pretty serious issue that I'd like to fix as quickly as possible.

Logged

Eagleon

  • Bay Watcher
    • View Profile
    • Soundcloud
Re: DFWall - a mass rewall/refloor utility
« Reply #24 on: May 05, 2008, 02:39:00 pm »

quote:
Originally posted by LordZabujca:
I can do that. You'd still have to save a material that has 99 units available (so that DFWall would know how a "99" looks like), but that should be all.

Couldn't you also make a condition that checks if the number goes beyond an arbitrary number of characters? So that you could also have it so that it won't use materials that have fewer than 10 left.

Logged
Agora: open-source, next-gen online discussions with formal outcomes!
Music, Ballpoint
Support 100% Emigration, Everyone Walking Around Confused Forever 2044

LordZabujca

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #25 on: May 05, 2008, 04:16:00 pm »

I could, sort of - I can simply save what an empty tile looks like and then check if there is an empty tile where the second digit would normally be. If so DFWall would skip this material. That request was specifically to allow "building using the first material that has more than 99 available units", but I can see no reason not to implement both of those options.

I do have lots and lots of other work to do this week, so don't expect to see a new version before the weekend, but I think I'll manage to release it on saturday or sunday.

Logged

Hague

  • Bay Watcher
  • How do I shot web?
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #26 on: May 06, 2008, 08:10:00 pm »

Yeah. I'm having similar problems to Tahin's. Specifically, the script responds nicely but it doesn't scroll properly. I've changed the ini to what you specified:

PageDownButton = {NumpadMult}
ScrollDownButton = {NumpadAdd}

But it still will not scroll when I attempt to use the functions.

Logged

LordZabujca

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #27 on: May 07, 2008, 02:30:00 am »

Okay, this isn't good. Lets try to fix it this way:
1. Change the default DF key settings to this:
Move secondary selector down:   =
Page secondary selector down:   Shift + =
2. Set DFWall.ini this way:
PageDownButton = {+}
ScrollDownButton = {=}

If that didn't help:
0. Are your XStart and YStart setup correctly?
1. Did you try my "lets try to get it running on your machine in the first place" instructions? If those would work we'd know it's a settings issue.
2. Could you zip your DF folder (without the saved games, but prefferably with your DFWall.ini inside) and post it somewhere for me to download? I'd like to take a closer look at what's causing this problem.

Logged

LordZabujca

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #28 on: May 11, 2008, 09:50:00 am »

The new version is up.

0.915 -> 0.916 changes:
1. A significant bug in the "local colours" feature in the mapmaker was fixed.
2. The default ini settings were changed to work on a larger number of computers without making any changes.
3. Added an ini setting to make DFWall stop rewalling if it can't find an appropriate material (MAY BE BUGGY - OFF by default).
4. New features implemented:
- CTRL+. - use this to save what a nine and an empty tile looks like in your tileset. USAGE: select any material with at least 90 units and press this key combination. If you don't have any such material you can select any other material instead, but if you don't do that then the third of the new features below will not work correctly.
- / - use this insead of a material number to tell DFWall to use ANY material for rectangle rewalling.
- . - use this insead of a material number to tell DFWall to use any material with more than 9 units for rectangle rewalling.
- , - use this insead of a material number to tell DFWall to use any material with more than 99 units for rectangle rewalling.

Please report both problems AND success in running DFWall here.

[ May 11, 2008: Message edited by: LordZabujca ]

Logged

Adelus

  • Bay Watcher
    • View Profile
Re: DFWall - a mass rewall/refloor utility
« Reply #29 on: May 13, 2008, 12:33:00 am »

This is my first post here, so forgive any noobishness...

I've played DF on and off for a year or so, but only recently have I really tried to commit to running a fort. So far, I'm having some problems with DFWall, and I don't know if anyone has asked about a similar problem.

1. It seems to show a reaction when I set it to remember a material. However, it doesn't seem to discriminate numpad numbers from the normal number row, regardless of what numlock is set to. As most of these numbers seem set to stuff, it'll randomly move a few squares based on the number when trying to lay something down...

2. ...which it never does. When I follow the steps exactly and try to set down a rectangular array,  it'll show some actions on the menu, the cursor will move once horizontally and then once vertically... and then all actions will stop.

I'm using the latest version, using a 16x16 square tile set, normal resolution for that, and I've changed the relevant settings in the .ini's for those. If you need it, I'll upload my DF (minus the saves) so you can see what the problem may be.

Logged
Pages: 1 [2] 3 4 5