Corrupted Saves

Post » Fri May 27, 2011 1:50 pm

Hey!

First off, thanks freddo! Using your instructions I finally got the game running in DOSbox. Muchly appreciated!

I'm having one major problem, though. Almost all of my save games get corrupted to the point that I can't load them again, causing crash after crash.

As you know, the golden rule in DF is "Save often!" So I do. After every combat or two, for example. But when I save, the screen freezes, and I have to shut the game down. When I start it up again, the save is visible in it's slot, but if I try to load the game I get this message:
You drop to the ground in exhaustion. You wake up an hour later.

...and the game freezes.

I have one working save slot at the moment; three others are corrupted.

Any idea what's causing the problem? There used to be a corrupt save utility, but I can't find it anymore. Anybody know where it's located?

Thanks in advance.
User avatar
Haley Cooper
 
Posts: 3490
Joined: Wed Jun 14, 2006 11:30 am

Post » Fri May 27, 2011 3:12 pm

The save game utility can be found http://www.uesp.net/wiki/Daggerfall:Files.
User avatar
Jennifer Munroe
 
Posts: 3411
Joined: Sun Aug 26, 2007 12:57 am

Post » Fri May 27, 2011 2:34 pm

Yes.

I understand now that I'm totally blind.

Tack s? mycket, Manveru.

PS: I've tried Fixsave now, but it doesn't help the problem.

Any other suggestions?
User avatar
steve brewin
 
Posts: 3411
Joined: Thu Jun 21, 2007 7:17 am

Post » Fri May 27, 2011 10:09 am

Nice you hear you got the game to run in DOSBox :)

If you start a new game and save, will that save become corrupted too, or are these all old saves?
User avatar
Lauren Graves
 
Posts: 3343
Joined: Fri Aug 04, 2006 6:03 pm

Post » Fri May 27, 2011 7:19 am

Actually, the saves seem to be working now. I'm not sure what I did wrong: need to be careful to save without pressing the sneak key, that seems to cause problems.

But since I've got your attention, I do have one other problem, namely that the game is kind of "laggy". I move my mouse, but it takes a second for the move register in the game.

Are there any settings in DOSbox I can play with that might sharpen the controls?
User avatar
My blood
 
Posts: 3455
Joined: Fri Jun 16, 2006 8:09 am

Post » Fri May 27, 2011 6:26 pm

CPU cylces are helpful.
User avatar
Camden Unglesbee
 
Posts: 3467
Joined: Wed Aug 15, 2007 8:30 am

Post » Fri May 27, 2011 5:58 am

Yeah, a little more info would probably be helpful.

I've got an old crappy Celeron 2.66 Ghz processor and an nVidia 5200FX graphics card with 512Mb RAM. Here are my DOSbox settings:

# This is the configurationfile for DOSBox 0.72.
# Lines starting with a # are commentlines.
# They are used to (briefly) document the effect of each option.

[sdl]
# fullscreen -- Start dosbox directly in fullscreen.
# fulldouble -- Use double buffering in fullscreen.
# fullresolution -- What resolution to use for fullscreen: original or fixed size (e.g. 1024x768).
# windowresolution -- Scale the window to this size IF the output device supports hardware scaling.
# output -- What to use for output: surface,overlay,opengl,openglnb,ddraw.
# autolock -- Mouse will automatically lock, if you click on the screen.
# sensitiviy -- Mouse sensitivity.
# waitonerror -- Wait before closing the console if dosbox has an error.
# priority -- Priority levels for dosbox: lowest,lower,normal,higher,highest,pause (when not focussed).
# Second entry behind the comma is for when dosbox is not focused/minimized.
# mapperfile -- File used to load/save the key/event mappings from.
# usescancodes -- Avoid usage of symkeys, might not work on all operating systems.

fullscreen=true
fulldouble=false
fullresolution=original
windowresolution=original
output=surface
autolock=true
sensitivity=100
waitonerror=true
priority=higher,normal
mapperfile=mapper.txt
usescancodes=true

[dosbox]
# language -- Select another language file.
# memsize -- Amount of memory DOSBox has in megabytes.
# machine -- The type of machine tries to emulate:hercules,cga,tandy,pcjr,vga.
# captures -- Directory where things like wave,midi,screenshot get captured.

language=
machine=vga
captures=capture
memsize=40

[render]
# frameskip -- How many frames DOSBox skips before drawing one.
# aspect -- Do aspect correction, if your output method doesn't support scaling this can slow things down!.
# scaler -- Scaler used to enlarge/enhance low resolution modes.
# Supported are none,normal2x,normal3x,advmame2x,advmame3x,hq2x,hq3x,
# 2xsai,super2xsai,supereagle,advinterp2x,advinterp3x,
# tv2x,tv3x,rgb2x,rgb3x,scan2x,scan3x.
# If forced is appended (like scaler=hq2x forced), the scaler will be used
# even if the result might not be desired.

frameskip=0
aspect=false
scaler=normal2x

[cpu]
# core -- CPU Core used in emulation: normal,simple,dynamic,auto.
# auto switches from normal to dynamic if appropriate.
# cycles -- Amount of instructions DOSBox tries to emulate each millisecond.
# Setting this value too high results in sound dropouts and lags.
# You can also let DOSBox guess the correct value by setting it to max.
# The default setting (auto) switches to max if appropriate.
# cycleup -- Amount of cycles to increase/decrease with keycombo.
# cycledown Setting it lower than 100 will be a percentage.

core=auto
cycles=max
cycleup=500
cycledown=20

[mixer]
# nosound -- Enable silent mode, sound is still emulated though.
# rate -- Mixer sample rate, setting any devices higher than this will
# probably lower their sound quality.
# blocksize -- Mixer block size, larger blocks might help sound stuttering
# but sound will also be more lagged.
# prebuffer -- How many milliseconds of data to keep on top of the blocksize.

nosound=false
rate=22050
blocksize=2048
prebuffer=10

[midi]
# mpu401 -- Type of MPU-401 to emulate: none, uart or intelligent.
# device -- Device that will receive the MIDI data from MPU-401.
# This can be default,alsa,oss,win32,coreaudio,none.
# config -- Special configuration options for the device. In Windows put
# the id of the device you want to use. See README for details.

mpu401=intelligent
device=default
config=

[sblaster]
# sbtype -- Type of sblaster to emulate:none,sb1,sb2,sbpro1,sbpro2,sb16.
# sbbase,irq,dma,hdma -- The IO/IRQ/DMA/High DMA address of the soundblaster.
# mixer -- Allow the soundblaster mixer to modify the DOSBox mixer.
# oplmode -- Type of OPL emulation: auto,cms,opl2,dualopl2,opl3.
# On auto the mode is determined by sblaster type.
# All OPL modes are 'Adlib', except for CMS.
# oplrate -- Sample rate of OPL music emulation.

sbtype=sb16
sbbase=220
irq=7
dma=1
hdma=5
mixer=true
oplmode=auto
oplrate=22050

[gus]
# gus -- Enable the Gravis Ultrasound emulation.
# gusbase,irq1,irq2,dma1,dma2 -- The IO/IRQ/DMA addresses of the
# Gravis Ultrasound. (Same IRQ's and DMA's are OK.)
# gusrate -- Sample rate of Ultrasound emulation.
# ultradir -- Path to Ultrasound directory. In this directory
# there should be a MIDI directory that contains
# the patch files for GUS playback. Patch sets used
# with Timidity should work fine.

gus=true
gusrate=22050
gusbase=240
irq1=5
irq2=5
dma1=3
dma2=3
ultradir=C:\ULTRASND

[speaker]
# pcspeaker -- Enable PC-Speaker emulation.
# pcrate -- Sample rate of the PC-Speaker sound generation.
# tandy -- Enable Tandy Sound System emulation (off,on,auto).
# For auto Tandysound emulation is present only if machine is set to tandy.
# tandyrate -- Sample rate of the Tandy 3-Voice generation.
# disney -- Enable Disney Sound Source emulation. Covox Voice Master and Speech Thing compatible.

pcspeaker=true
pcrate=22050
tandy=auto
tandyrate=22050
disney=true

[joystick]
# joysticktype -- Type of joystick to emulate: auto (default), none,
# 2axis (supports two joysticks,
# 4axis (supports one joystick, first joystick used),
# 4axis_2 (supports one joystick, second joystick used),
# fcs (Thrustmaster), ch (CH Flightstick).
# none disables joystick emulation.
# auto chooses emulation depending on real joystick(s).
# timed -- enable timed intervals for axis. (false is old style behaviour).
# autofire -- continuously fires as long as you keep the button pressed.
# swap34 -- swap the 3rd and the 4th axis. can be useful for certain joysticks.
# buttonwrap -- enable button wrapping at the number of emulated buttons.

joysticktype=auto
timed=true
autofire=false
swap34=false
buttonwrap=true

[serial]
# serial1-4 -- set type of device connected to com port.
# Can be disabled, dummy, modem, nullmodem, directserial.
# Additional parameters must be in the same line in the form of
# parameter:value. Parameter for all types is irq.
# for directserial: realport (required), rxdelay (optional).
# for modem: listenport (optional).
# for nullmodem: server, rxdelay, txdelay, telnet, usedtr,
# transparent, port, inhsocket (all optional).
# Example: serial1=modem listenport:5000

serial1=dummy
serial2=dummy
serial3=disabled
serial4=disabled

[dos]
# xms -- Enable XMS support.
# ems -- Enable EMS support.
# umb -- Enable UMB support.
# keyboardlayout -- Language code of the keyboard layout (or none).

xms=true
ems=true
umb=true
keyboardlayout=none

[ipx]
# ipx -- Enable ipx over UDP/IP emulation.

ipx=false

[autoexec]
# Lines in this section will be run at startup.

MOUNT C DOSGAMES
C:
CD DAGGER
FALL.EXE Z.CFG


So how do I change the CPU cycle rate, and should it be increased or decreased, do you think? I tried capping it at 20000 but the result was worse.
User avatar
suzan
 
Posts: 3329
Joined: Mon Jul 17, 2006 5:32 pm

Post » Fri May 27, 2011 4:41 pm

CPU cylces are helpful.


What does this have to do with a corrupted saved game?
User avatar
Lovingly
 
Posts: 3414
Joined: Fri Sep 15, 2006 6:36 am

Post » Fri May 27, 2011 1:25 pm

Frameskip=1 and cycles = auto works well for me. Max cycles can slow down the game if it's too fast.

As for the Exhaustion bug, that's one of those that can't be fixed by fixsave. Fixsave is generally only for repairing bugged out quests, etc.
User avatar
Jake Easom
 
Posts: 3424
Joined: Sun Jul 29, 2007 4:33 am

Post » Fri May 27, 2011 6:31 pm

Thanks, Jormungandr. I've tried frameskips 1 and 2 before, but the game became too slow to play at all. I didn't realize you could set cycles to auto, I'll try it out and see if it helps.

For what it's worth, the lag only occurs indoors. Outdoors everything works great.
User avatar
Racheal Robertson
 
Posts: 3370
Joined: Thu Aug 16, 2007 6:03 pm

Post » Fri May 27, 2011 9:10 am

Ah, I used to get that problem, too (slowdown only indoors, but just fine outside and in dungeons). I believe changing your mount line to this will help:

MOUNT C DOSGAMES -freesize 1000

Oh, and memsize=40 could stand to be increased. Mine is at 128.
User avatar
Theodore Walling
 
Posts: 3420
Joined: Sat Jun 02, 2007 12:48 pm

Post » Fri May 27, 2011 12:00 pm

The "cycles=auto" is broken in DOSBox. Set frameskip to 0 and cycles to max. Yes this should run Daggerfall beautifully on your system. You only need 16MB to 32MB of memory, and generally more memory causes problems, unless you set it to some insanely high number, which will prolong the problems occuring for some amount of time. I run with 16MB, max cycles, and no frameskip and it runs just fine. Also use the dynamic core, if you're not already using it.

Ah, I see the problem. Your core is set to auto. Set your core to dynamic, leave cycles at max, and try it with either 16 or 32MB of memory.
User avatar
Cesar Gomez
 
Posts: 3344
Joined: Thu Aug 02, 2007 11:06 am

Post » Fri May 27, 2011 8:07 pm

Hmmm...the shift to dynamic core seems to help somewhat. I set mem to 128. The only thing is that my dude moves very very quickly, so I tend to bump into walls and stuff. Otherwise, this seems better.

Anybody have any recommendations for widescreen settings? If I use fullscreen original, things look kinda fat. But I'd prefer not to play in small window if I can avoid it.

By the way, thanks very much to everyone so far for taking out the time to help. I really appreciate it.
User avatar
Matthew Aaron Evans
 
Posts: 3361
Joined: Wed Jul 25, 2007 2:59 am

Post » Fri May 27, 2011 1:52 pm

Ah, I used to get that problem, too (slowdown only indoors, but just fine outside and in dungeons). I believe changing your mount line to this will help:

MOUNT C DOSGAMES -freesize 1000

Oh, and memsize=40 could stand to be increased. Mine is at 128.



Actually, most old DOS games rarely if ever use more than 16mb of RAM.

Mostly, they complain about conventional/low/DOS memory-- AKA-- the lower 640 kilobytes. this usually isnt an issue in dosbox.
User avatar
Rozlyn Robinson
 
Posts: 3528
Joined: Wed Jun 21, 2006 1:25 am

Post » Fri May 27, 2011 8:03 am

Actually, most old DOS games rarely if ever use more than 16mb of RAM.

Mostly, they complain about conventional/low/DOS memory-- AKA-- the lower 640 kilobytes. this usually isnt an issue in dosbox.

Daggerfall use about 30-35 mb of RAM, though. So unless people want DOSBox to work with a swapfile which Daggerfall will use if RAM is low, it should be set to 40 or higher. 40 should give enough of a safety margin so a higher value is really a waste of RAM.

Svinlesha, it's possible to change the mouse sensitivity in DOSBox with sensitivity=100 but I don't think it will actually help. It seems to me that it's your CPU that is at it's limit here trying to emulate a system powerful enough for Daggerfall. Could be wrong, tho.

Anyway, you could try these settings and see if they improve things. Lower it to 20000 or something if it stutters and your CPU can't handle it.
core=dynamic
cycles=auto limit 30000
User avatar
Jaki Birch
 
Posts: 3379
Joined: Fri Jan 26, 2007 3:16 am

Post » Fri May 27, 2011 7:01 am

I've played around now with a lot of settings... I did lower it to 20000, but it didn't help much. I'll play test your settings and see how it goes.

Anyway, I can play it, which is the main thing, even if it isn't perfect. Thanks again for all the help and advice.
User avatar
Agnieszka Bak
 
Posts: 3540
Joined: Fri Jun 16, 2006 4:15 pm

Post » Fri May 27, 2011 7:08 am

Hey I had the same problem with the save games thing. Where do I extract the FixSave.exe file to exactly?? Or do I double-click it and put the Daggerfall CD in like it tells me to??
User avatar
Casey
 
Posts: 3376
Joined: Mon Nov 12, 2007 8:38 am

Post » Fri May 27, 2011 11:16 am

Well, you put fixsave in your Daggerfall folder and then run it.

But it won't help you if your having the same problem that I was having: it only works if you can at least load the save in question.
User avatar
Rachyroo
 
Posts: 3415
Joined: Tue Jun 20, 2006 11:23 pm

Post » Fri May 27, 2011 11:27 am

K its better than it was doing now, thanks! No I dont think I had the same problem you did though... Works great!
User avatar
Genevieve
 
Posts: 3424
Joined: Sun Aug 13, 2006 4:22 pm

Post » Fri May 27, 2011 9:00 pm

Daggerfall use about 30-35 mb of RAM, though. So unless people want DOSBox to work with a swapfile which Daggerfall will use if RAM is low, it should be set to 40 or higher. 40 should give enough of a safety margin so a higher value is really a waste of RAM.

This may be true under Win98 or Win95, but in DOS under a normal configuration using EMM386.EXE, you couldn't even address that much RAM. EMM386 was limited to 32MB of memory, and Daggerfall ran FINE (still does, actually) on my older systems in DOS. If you took EMM386 out of the picture and did some really good tweaking to HIMEM.SYS, you could address up to 64MB of RAM. This was using a long line of commands following the HIMEM.SYS line in your config.sys file though, and to be quite honest I don't remember much about it without hooking up one of my old DOS machines and checking their system files out.

What I am getting at, is that Daggerfall at version 2.13 rarely crosses the 20MB boundary, and as such using more than 32MB is a waste. My personal experience here is that when I allow DOS or DOSBox to use more than 32MB of memory, Daggerfall starts doing stupid things like sending my character into the void or crashing with error numbers when I go into stores and such. Taking it down to 32, 24, or 16MB fixes those problems.

Daggerfall has a memory manager that is uses under Win9X that does use more memory and I regularly saw it at around 30~40MB, but I've never seen it use that much in DOS. The most likely cause for this was that most DOS configurations had the granularity of the segment limit set to bytes, not the 4KB blocks used in Win9X. This allowed for more efficient use of memory, but at the cost of having less total memory accessible.

Now, if DOSBox is emulating a regular DOS system, Daggerfall shouldn't use more than 20MB very often, but if the Daggerfall executable is picking up Windows and running the other memory manager, then I'll tend to agree with you. My point is that the absolute most memory needed to run DF in DOSBox is about 64MB. I run it in mine with 32MB and have not had it crash, throw me out of the map, or corrupt a save. I have had problems when using more RAM though.
User avatar
Marcin Tomkow
 
Posts: 3399
Joined: Sun Aug 05, 2007 12:31 pm

Post » Fri May 27, 2011 12:28 pm

Then explain why it is that if one play Daggerfall on a real DOS 6.22 computer (obviously not booting Windows) with 16mb of RAM, Daggerfall will create a 16-18mb large swapfile if only a 4mb swapfile (20mb total) would be needed.
User avatar
Daniel Brown
 
Posts: 3463
Joined: Fri May 04, 2007 11:21 am

Post » Fri May 27, 2011 9:10 am

Daggerfall can create its own swapfile?! This is news to me, and I would be VERY interested in knowing where it creates the file and the filename. If I can reproduce this behavior then I will stand corrected.
User avatar
An Lor
 
Posts: 3439
Joined: Sun Feb 18, 2007 8:46 pm

Post » Fri May 27, 2011 7:54 pm

I don't remember the exact filename, but it should be in the same folder where Daggerfall is installed. My 16mb 486 is collecting dust in my parents basemant and my current DOS computer is a Pentium 166 with 64mb, so I'm unable to check what the filename is at the moment.

It's only created if one start the game with dagger.exe and not with the fall.exe z.cfg trick since it bypasses the RAM check and other checks (which will cause a crash on a 16mb machine eventually).

I also recall the swapfile being deleted when one quit Daggerfall (although my memory could be faulty regarding that and only Battlespire remove it's swapfile), so the easiest way to see the file would be to let the game crash, or just reboot the computer while playing the game.
User avatar
Sabrina Steige
 
Posts: 3396
Joined: Mon Aug 20, 2007 9:51 pm

Post » Fri May 27, 2011 2:54 pm

I cannot play by starting Daggerfall with dagger.exe because it fails to find the CDROM, whether it is in the mounted CDROM drive or not. I think that's what z.cfg is for, which cannot be passed to dagger.exe, but can be passed to fall.exe. It keeps saying that I inserted the wrong CD, even though I am inserting my original CD, not a copy or anything. It also says that dagger.exe is v1.0, but I have applied the 2.13 patch. This is odd.
User avatar
StunnaLiike FiiFii
 
Posts: 3373
Joined: Tue Oct 31, 2006 2:30 am

Post » Fri May 27, 2011 3:50 pm

Not sure if this is the problem, but extract it, instead of double-clicking the .exe file. Extract the files to the right place, thats what I did, and it works. I have to use Fall.exe as well (I think?)
User avatar
Anthony Diaz
 
Posts: 3474
Joined: Thu Aug 09, 2007 11:24 pm

Next

Return to The Elder Scrolls Series Discussion