Bay 12 Games Forum

Please login or register.

Login with username, password and session length
Advanced search  
Pages: 1 ... 10 11 [12] 13 14 ... 20

Author Topic: UltraFinder 2.8 - Embark Finder (Post ideas and requests for the next release)  (Read 52886 times)

Criptfeind

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #165 on: August 03, 2009, 01:01:47 am »

Weirdest thing, I put the finder in my vanilla DF folder and it worked! So I took a fresh DF and copied my raws over to it. After out the right stuff in the int folder it worked! So now it is working for me but I have no idea what is deferent between the two copies of DF, weird.
Logged

GFXiNXS

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #166 on: August 03, 2009, 01:10:08 am »

Thats... rather odd. I'm at a loss for reasoning as to why that would happen. Oh well, after all the effort you went to to get it to work properly, I hope you have good luck finding a decent site :)
Logged
Intel i7 980X 6-Cores @ 3.8GHz
6GB DDR3 8-8-8-24 @ 2000MHz
Radeon 5970 - Stock Clocks

Criptfeind

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #167 on: August 03, 2009, 01:40:35 am »

O, I will, I will…

FOR I HAVE HASALL, a world gen parameter that causes dwarf heaven AND the dwarven dream to cry tears of joy! It is routine to find everything you want and more with this parameter. But alas it is rare to find it in less than 6 by 6. But now I will get it in a 4 by 4 or perhaps a 3 by 3. I wish I could take credit for this brilliant gen but I cannot, it was made by Derakon.

Spoiler (click to show/hide)

In all seriousness though I have found that HASALL makes some VERY good worlds, and I would like to thank Derakon for making it.
« Last Edit: August 03, 2009, 06:08:09 am by Criptfeind »
Logged

GFXiNXS

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #168 on: August 03, 2009, 02:05:40 am »

Heh, well, if you find one better than this (my own parameters):



...let me know. Sacrifice the river and you can compact the site nicely :)

Site Found! readout:
Spoiler (click to show/hide)

Has 94 z-levels, bauxite and all civs.

World Gen Parameters:
When given the grasslands warning, hit "p" to ignore all. Created in purely Vanilla.
Spoiler (click to show/hide)
« Last Edit: August 03, 2009, 02:17:16 am by GFXiNXS »
Logged
Intel i7 980X 6-Cores @ 3.8GHz
6GB DDR3 8-8-8-24 @ 2000MHz
Radeon 5970 - Stock Clocks

Criptfeind

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #169 on: August 03, 2009, 05:40:09 am »

Ok I only just now got around to actually testing it and I found that when it finds a good spot it deletes it and acts like the world is a dud. Also I thought that it was to go through 9 worlds before it deletes them, but it is only doing one.

This has probably been put up and fixed but I am really tired so I probably missed it.

Update: 2.8 IS working so I shall use that.

Also I take your challenge. I will start gening… NOW

Edit: To anyone who is going to use HASALL make sure the DIM is set at 65:65 it works a lot faster at the loss of a big world, it is worth it. Elves tend to die out though.
« Last Edit: August 03, 2009, 06:21:26 am by Criptfeind »
Logged

Elvang

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #170 on: August 03, 2009, 10:53:34 am »

I went ahead and gave this a try to see what features you had :)

Both versions move the selector to the about screen and stay there. Out of 10 attempts only two caused it to generate a world, those immediately being paused (unpausing and letting it continue eventually gets me to the embark screen, except nothing happens; opening the finder menu does not prompt it back into action). FPS was off, grid and screen size were at defaults. No color changes, vanilla init basically. It seems to ignore the keystroke delay I set in the ini, moving instantaneously to the about option, even with a value greater than 2000. When your setting the delay are you using %'s around the var name?
Logged
The Practicalities of Fire Imp Defense
Tileset fonts for dfterm/telnet
Win 0.34.11 SDL with 7 binary patched bugfixes
Quote from: They Dig
I have come here to drink booze and breach HFS... and I'm all out of booze.

GFXiNXS

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #171 on: August 03, 2009, 07:58:09 pm »

-snip-
Update: 2.8 IS working so I shall use that.

We have victory. I'm amazed at how many revisions this has taken to get here. Yay for inexperience! /sarcasm.

-snip-
When your setting the delay are you using %'s around the var name?

Why yes, yes I am. Is this a bad thing or a good thing? It works on the few computers I've tried it on :-\

Are you using a shaded character set like Herrbdog etc? The shading (even subtle) throws my program into a tantrum spiral. It just keeps hitting things and throwing key press signals all over the place.
Logged
Intel i7 980X 6-Cores @ 3.8GHz
6GB DDR3 8-8-8-24 @ 2000MHz
Radeon 5970 - Stock Clocks

Elvang

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #172 on: August 03, 2009, 08:16:22 pm »

The %'s are good for when your using it as part of an action, like setting the delay. Must just be my computer, as going back over the previous posts I don't see mentions of problems with the delay. I'm using the vanilla tileset, no customizations done to it. The problem in my case looks like key presses are being ignored/speed, with it trying to work through a screen I'm not really at yet.

If your looking for an easy way to debug, stick this after anytime a screen change should've occurred, or a function that might error frequently (such as opening files).
Code: [Select]
FileAppend %ErrorLevel% reported for <insert action here>, debug.txt
or
FileAppend <name of screen>, debug.txt
With AutoHotKey I've found it helps to always check and make sure that what is being sent to the actions is actually what you tried assigning, either through a quick MsgBox %var% or checking for ErrorLevel returns that aren't 0.

After thought: How are you sending the keys? For mine I've always had to use the third method, with Sleep(x) between each send (setkeydelay never really worked accurately for me, I can get away with Sleep(100) but keydelay of 500 still screws up), I think it worked fine before the 40d# releases changed the way keyboard input was handled.
Code: [Select]
Send {Down}{Down}{Down}
or Send {Down 3}
or Send {Down}
   Send {Down}
   Send {Down}
Logged
The Practicalities of Fire Imp Defense
Tileset fonts for dfterm/telnet
Win 0.34.11 SDL with 7 binary patched bugfixes
Quote from: They Dig
I have come here to drink booze and breach HFS... and I'm all out of booze.

GFXiNXS

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #173 on: August 03, 2009, 09:09:25 pm »

Excellent suggestion about debugging. The hitch, of course, being that, oftentimes the problems stem from the program not registering an error and thus going about it's business and then getting stuck at the next screen change or further. This would leave errors in the log pertaining to the screen change after and beyond which just gets messy. Another problem being that when scanning for screen changes, it keeps looking till the change is registered (with intermittent Sleep delays), which would thusly spam the log with errors. I suppose I could have it simply append a note whenever it gets to each stage of the program, along with whether an error was logged or not, and then simply flag that point to prevent spam. Your thoughts?

Don't mind the chunk of text, I'm more leaving it there as a note to myself than anything. Also, given that you seem knowledgeable, giving you my mental diarrhoea to disect and disseminate seems wise.

Also, about Send, throughout the whole code I have it as
Code: [Select]
Send, {Down 3}Or in the instances of people setting savagery to 3 in the init, it is
Code: [Select]
If (Savagery > 0)
{
    Send, {Right %Savagery%}
}

If this really is an issue to some people though, I suppose I could make a simple class that sends a (Sleep induced) delay after each key press, as opposed to relying on SetKeyDelay. The code is due for a good swathe of reorganisation, so I could always throw that in there. It is beginning to get hard to tell what is what these days and it's a tad off putting.

Cheers :)
Logged
Intel i7 980X 6-Cores @ 3.8GHz
6GB DDR3 8-8-8-24 @ 2000MHz
Radeon 5970 - Stock Clocks

Elvang

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #174 on: August 03, 2009, 10:03:24 pm »

If you wanted, you could provide an option to enable debugging somewhere (ini or a popup), and as it notes what stage it thinks it is at, take a screenshot of the current screen and name the file with a number that matches the appropriate debug line (just stick a variable in the debug output and increment everytime something is sent to it). Anyone having problems could then just compress the images and debug file, allowing you to 'step' through the problem they are experiencing.

Another problem being that when scanning for screen changes, it keeps looking till the change is registered (with intermittent Sleep delays), which would thusly spam the log with errors.
I'd only log it when it detects the change and makes change, if the last thing the log shows is an action before a detect change loop, you'll know something in the loop went wrong. On that note, make sure the delay is long enough for DF's menu to actually update, if someone has an older computer it might delay on some of the menus, such as the finder and loading a region (I occasionally get a screen where if I press a key too quickly it doesn't recognize it, at least immediately).

I never had a chance to test mine out against other computers, but all of my delays and key sends were specific to make it work accurately and as fast as it would for my computer. For me that was a separate Send for each key followed by a delay (larger if a screenchange). To test it out you could make a new, small script that cycles through a player's menu with various methods and notes whether or not it got to the screen it was supposed to, as opposed to revamping all your send's when it might not be the cause.
Logged
The Practicalities of Fire Imp Defense
Tileset fonts for dfterm/telnet
Win 0.34.11 SDL with 7 binary patched bugfixes
Quote from: They Dig
I have come here to drink booze and breach HFS... and I'm all out of booze.

GFXiNXS

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #175 on: August 03, 2009, 10:52:40 pm »

Heh, thats the thing,- this program scans the screen prior to sending key presses. Eg (overly simplified):
Code: [Select]
Send, {Up 3}
Send, {Enter}

Loop Scan for F9 screen
{
    If true, hit F9, continue
    If false
    {
        Scan for world creation screen
        If true, break
        If false, continue
    }
}

Rescan to check for world creation screen
if true Send, {Down %World%}
Send, {Enter}
...etc

In this manner, it should only be sending the key presses after screens have changed. Literally every time the screen changes, there is a scan in place to check whether or not it has occurred or not.

I originally built the program around my computers' specific timings, but upon making a public release I knew that wouldn't cut it so I came up with a design that would cater for any delays, no matter how long. This works on my beast of a gaming/workstation rig, as well as my shitty (and I mean shitty) internet access pc at work :) (don't tell my boss :P)

What it doesn't scan for is whether or not your DF has registered the keypress and that the right option is highlighted before moving on. So, effectively if it's sending keypresses faster than your computer can take, that could be an issue.

The scans are relative to your window, too, so make sure the whole thing is visible. Another thing this does is gauge your desktop scheme's title bar thickness, as it varies the Y coordinate of where true 0,0 is within your DF window. WinXP is 3,22 where as Win7 is 3,25 etc. If you have some trippy colours or even flat whites and blacks, the program could miscalculate the true 0,0 and scan the wrong portions of your screen and thusly lead to misdirection.

Thanks for the advice on the debugging too. When I get time to make another release, that'll definately go in there. I'm sick of guestimating fixes :P

Cheers, GFXiNXS :)
Logged
Intel i7 980X 6-Cores @ 3.8GHz
6GB DDR3 8-8-8-24 @ 2000MHz
Radeon 5970 - Stock Clocks

Elvang

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #176 on: August 03, 2009, 11:10:18 pm »

The scans are relative to your window, too, so make sure the whole thing is visible. Another thing this does is gauge your desktop scheme's title bar thickness, as it varies the Y coordinate of where true 0,0 is within your DF window. WinXP is 3,22 where as Win7 is 3,25 etc. If you have some trippy colours or even flat whites and blacks, the program could miscalculate the true 0,0 and scan the wrong portions of your screen and thusly lead to misdirection.
That seems like the culprit for me then, as I'm using a dark theme for XP.

Spoiler: Screenshot (click to show/hide)
While taking the screenshot (vanilla 40d used for reveal), I noticed that it is only the 40d# releases that have an about option on the main menu, was that taken into account for the number of key presses?
Logged
The Practicalities of Fire Imp Defense
Tileset fonts for dfterm/telnet
Win 0.34.11 SDL with 7 binary patched bugfixes
Quote from: They Dig
I have come here to drink booze and breach HFS... and I'm all out of booze.

GFXiNXS

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #177 on: August 03, 2009, 11:14:55 pm »

Code: [Select]
If (FortyDee = 1)
{
    Send, {Up 2}
}
else
{
    Send, {Up 3}
}

I'm quite thorough :)
Logged
Intel i7 980X 6-Cores @ 3.8GHz
6GB DDR3 8-8-8-24 @ 2000MHz
Radeon 5970 - Stock Clocks

Lamp

  • Bay Watcher
    • View Profile
    • isock.deviantart.com
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #178 on: August 04, 2009, 12:13:00 am »

Hehe, Elvang, you're not the only one with delay issues, did changing your theme work at all? I'm using the default Vista theme, so I don't really think that's the issue for me..
Logged
I would like to point out that this is not DF 3.0, but DF 0.3.

GFXiNXS

  • Bay Watcher
    • View Profile
Re: Dwarf Fortress UltraFinder 2.8 - Embark Finding Utility (W.I.P
« Reply #179 on: August 04, 2009, 12:47:53 am »

Ah, Lamp, excellent, I was going to clarify; UltraFinder worked for you in version 2.6 (Default colour scheme only, or any?), and now it doesn't work in version 2.6c through 2.8, no matter what colour scheme? Also, at what point does the program halt?

Thanks, GFXiNXS
Logged
Intel i7 980X 6-Cores @ 3.8GHz
6GB DDR3 8-8-8-24 @ 2000MHz
Radeon 5970 - Stock Clocks
Pages: 1 ... 10 11 [12] 13 14 ... 20