Bay 12 Games Forum

Please login or register.

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

Author Topic: SpeedDFv0.8 made  (Read 1820 times)

Veroule

  • Bay Watcher
    • View Profile
SpeedDFv0.8 made
« on: July 12, 2007, 06:03:00 pm »

I have been working away at this patch for a bit.  The purpose of it is to seperate the redraw from the actual gameplay.  Letting them run at different speeds where the redraw is actually slower making game play faster.  This is a patch to the DF exe itself and therefore carries larger risks to use then various utilities.

I am hoping a few people will try it out and let me know how well it works for different systems.  The issues I currently know with it: loading and saving games seem to be much slower, I haven't tested CMV recording or playing at all, saving may cause a crash, FPS_CAP in the ini doesn't always seem to be respected.

Now to the fun things, some screen caps of me playing around with the CopperBlazes summer of 69 save in the patched version.  Note my system is an impressive 1GHz Athalon with a whopping 384Mb of memory all of which are about 5 years old.    

Finally a link to the 0.8 version of the patch, please give it a try and let me know.
SpeedDFv0.8.zip

Logged
"Please, spare us additional torture; and just euthanise yourselves."
Delivered by Tim Curry of Clue as a parody of the lead ass from American Idol in the show Psych.

Xgamer4

  • Bay Watcher
    • View Profile
Re: SpeedDFv0.8 made
« Reply #1 on: July 12, 2007, 06:42:00 pm »

Title screen FPS. 999.

Yeah, it doesn't really respect the ini files, does it?

~640 FPS when first creating a fortress when the cap is 100. Ah well, doesn't matter to me. Looks promising. Let me experiment a bit more.

Logged
insert something mind-blowing/witty here*

zac4213

  • Bay Watcher
    • View Profile
Re: SpeedDFv0.8 made
« Reply #2 on: July 12, 2007, 06:50:00 pm »

I uploaded it to my website, http://www.dfdsdesigns.net/SpeedDFv0.8.exe,  so you don't have to use crappy rapidshare.

[ July 12, 2007: Message edited by: zac4213 ]

Veroule

  • Bay Watcher
    • View Profile
Re: SpeedDFv0.8 made
« Reply #3 on: July 12, 2007, 07:03:00 pm »

I am glad to see there is some interest already.  I think most of the problems will likely be linked to single flag that I couldn't quite figure out the purpose of.  Depending on the results you guys find I will likely try to really track it down.

I am pretty sure the cause of not repspecting the ini is that I had to borrow memory addresses related to the existing timing controls.  The first one I picked was overwritten in such a way that it caused rapid crashing.  From the amount of testing I did, the way I have it now will be able to be corrected.  It just requires that I track down all the spots where it is getting changed.  It took a fair bit of time for me to just track down whether the existing FPS counter was on the drawing or the game side.  So it will take a lot longer to track down all the causes of this problem, but I can probably find a few rather easily.

Mostly I want to make sure it is worth my time, and I have things headed in the right direction.

Logged
"Please, spare us additional torture; and just euthanise yourselves."
Delivered by Tim Curry of Clue as a parody of the lead ass from American Idol in the show Psych.

4bh0r53n

  • Bay Watcher
    • View Profile
    • http://www.phpbber.com/phpbb/index.php?c=1&mforum=abhorsengames
Re: SpeedDFv0.8 made
« Reply #4 on: July 13, 2007, 03:22:00 am »

doesnt seem to work for me, keeps coming up with either "file not found" (even when i direct it to the correct one) or "your version is already patched" (ive tried this on all 5 instances of the current version of DF i have on my machine)
Logged
.B.H.O.R.S.E.N.: Abhorrent, Bloodthirsty, Hitchhiker-Obliterating Ravager from the Sunless Enchanted Necropolis

I dont explode Cats, its way to hard to coax them into the microwave...

Asehujiko

  • Bay Watcher
    • View Profile
Re: SpeedDFv0.8 made
« Reply #5 on: July 13, 2007, 04:26:00 am »

You need to place it in the df root directory to "work".
Logged
Code: [Select]
Tremble, mortal, and despair! Doom has come to this world!
.....EEEE..E..E.E...EEE.EE.EE.EEE.EE..EE.EE.E.EE.EE.E.EE.
......E..EE.EE.EE.EE..E...EEEE..E..E.E...EEE.EEE...E.EEE.
.☺..EE.E...E.EE.EE...E.EE..E..EE.EE.EE.EE..E...EE.EE..E.E
.....E..E.E.E.E.E.EE.E.E.EE.E...E.EE.EE...E.EE.EE.EEE...E
....E.EE.EEE.EE..EE.EE.E..EEEE..E..E.E...EEE.EEE..E.E..EE

Darwithe

  • Escaped Lunatic
    • View Profile
Re: SpeedDFv0.8 made
« Reply #6 on: July 13, 2007, 04:42:00 am »

Very cool from what I see of the way it should work. Unfortunately on my system it will run for around 9-15 seconds then jerk to a halt for 2 or 3 (sometimes as much as 30) before resuming. Unplayable that way. Just seeing that FPS of 2473 was worth the download thou ^_^
Logged

utunnels

  • Bay Watcher
  • Axedwarf
    • View Profile
Re: SpeedDFv0.8 made
« Reply #7 on: July 13, 2007, 04:52:00 am »

Oh, faint.
I get only 10 fps or so (never pass 20, usually less than 5) in adventure game. I have a Celeron 1.8G CPU.

---*edited*---

Ah, not saying your patch.  :)

[ July 13, 2007: Message edited by: utunnels ]

Logged
The troglodyte head shakes The Troglodyte around by the head, tearing apart the head's muscle!

Risen Asteshdakas, Ghostly Recruit has risen and is haunting the fortress!

Toady One

  • The Great
    • View Profile
    • http://www.bay12games.com
Re: SpeedDFv0.8 made
« Reply #8 on: July 13, 2007, 08:16:00 pm »

Doing the code changes led to a negligible change here.  If you have out-of-date drivers it might help more.
Logged
The Toad, a Natural Resource:  Preserve yours today!

Arnos

  • Bay Watcher
    • View Profile
Re: SpeedDFv0.8 made
« Reply #9 on: July 13, 2007, 09:06:00 pm »

...bummer, I was hoping to get a massive speed increase.
Logged

Veroule

  • Bay Watcher
    • View Profile
Re: SpeedDFv0.8 made
« Reply #10 on: July 14, 2007, 12:10:00 am »

I have really been delving into all the causes of the FPS_CAP not being respected.  It seems that the way I borrowed variable space is rather bad.  I do not plan to make a v.81 patch.  It would just be wrong to keep going down the current path.

In order to proceed with that path I would have find and then make changes all over the place.  My final goal in doing this is that I could actually produce a small set of changes to Toady in C++ psuedocode.  Close enough to his source code that he can make the same changes and see a large result.  The patch I produced doesn't even come close to actually doing that.

Instead I am aiming at seperating the gameplay from the keyboard polling routine now.  The redraw is already easy enough to seperate.  My new goal for a .9 patch is to make gameplay be the only item on the high resolution timer.  Keyboard polling should be fixed to about 66 times per second, depending on your key hold setting.  Redraws will be aimed to the 10 FPS that I keep claiming is enough.

It may be a while still before I reach that point, but the few replies here helped.  I especially appeciate that you looked at it Toady.  It means a lot to me.  When I actually get a stable and productive patch made I will post clear list to match the source (albiet based on the naming in the KQ source).

I more or less have to declare my v0.8patch a failure.  Zac4213 if you would like to establish some contact I certainely like avoiding rapidshare if possible.  I just can't say how long it will take me to really figure out what I think needs to be done.

Logged
"Please, spare us additional torture; and just euthanise yourselves."
Delivered by Tim Curry of Clue as a parody of the lead ass from American Idol in the show Psych.

capgamer

  • Escaped Lunatic
    • View Profile
Re: SpeedDFv0.8 made
« Reply #11 on: July 14, 2007, 01:20:00 am »

Really cool idea. I haven't tried out the patch yet, but I thought I'd provide yet another link to download it because I also hate Rapidshare with a passion: http://www.mediafire.com/?fwbnzyim50x
Logged
f you kill a man''s daughter and throw her severed head at the man in a forest, and it breaks his lower body, does he give in to the pain?

zac4213

  • Bay Watcher
    • View Profile
Re: SpeedDFv0.8 made
« Reply #12 on: July 14, 2007, 01:54:00 am »

Do you have MSN Veroule, If so, then my name on it is zac4213@walla.com.

kein

  • Bay Watcher
    • View Profile
    • My Dwarf Fortress Wiki page
Re: SpeedDFv0.8 made
« Reply #13 on: July 15, 2007, 01:55:00 am »

07/13/2007: Added option to set graphics refresh rate

Looks like Toady liked your idea, no need for this after next release  :)

Logged

Veroule

  • Bay Watcher
    • View Profile
Re: SpeedDFv0.8 made
« Reply #14 on: July 15, 2007, 08:25:00 am »

I have been tweaking around with enough more to figure everything out.  There is no way for me to really seperate of the keyboard polling into its own time frame.  Also from the screen shots in my first post you can tell that by itself isn't much of a time eater.

My final assessment is that Toady is right the speed gains will be rather small during play.  The dwarves activities really are the big time eater.  The change will help in the early game, but not as much later.

I will be posting up a new patch pretty soon.  I have to write it myself instead of using CodeFusion, because it will be configurable.  Currently I am play testing the patched version to make sure it is operating stablely.  The patch allows a ratio to be set between the game side and the redraw, and I will be making it so that ratio is adjustable.  I will also be trying to make it into an active memory patch so that it doesn't modify the file and can be adjusted during play.  I just have to look up all the needed debugging type controls to do it.

Logged
"Please, spare us additional torture; and just euthanise yourselves."
Delivered by Tim Curry of Clue as a parody of the lead ass from American Idol in the show Psych.
Pages: [1] 2