Register forum user name Search FAQ

Gammon Forum

Notice: Any messages purporting to come from this site telling you that your password has expired, or that you need to verify your details, confirm your email, resolve issues, making threats, or asking for money, are spam. We do not email users with any such messages. If you have lost your password you can obtain a new one by using the password reset link.

Due to spam on this forum, all posts now need moderator approval.

 Entire forum ➜ MUSHclient ➜ General ➜ Unable to create save state file

Unable to create save state file

It is now over 60 days since the last post. This thread is closed.     Refresh page


Posted by Rum Whiskers   (1 post)  Bio
Date Wed 29 Aug 2007 03:02 AM (UTC)
Message
Now before you sigh and say "this has been discussed before", I did read the two previous topics that I found under SEARCH in relation to this topic but the solutions on those threads have not helped me so I thought I'd take a chance and discuss it here.

I'm brand new on Windows Vista and having problems saving my World on Achaea if I have absolutely any Plugins installed to the game. What I get is generally the same old:

Unable to create the plugin save state file: C:\Program Files\MUSHclient\worlds\plugins\state\8a5cbed3d63864419ff8caa4-c3fda3e0e77a5fbebf3c5e10-state.xml

The location its attempting to save does very much exist, I've tried moving it around and such but I'm never very savvy with MUSH yet to be trying any other tactics.

Is there something I'm forgetting to fiddle with or fix?

Thanks.
Top

Posted by Nick Gammon   Australia  (23,133 posts)  Bio   Forum Administrator
Date Reply #1 on Wed 29 Aug 2007 04:26 AM (UTC)
Message
You probably don't have write access to C:\Program Files\.

What I suggest you do is move (or copy) the plugins folder to somewhere else (if you want anything in it), such as My Documents, where you have write access, and then go to File -> Global Preferences -> Plugins, and change the Plugins Directory (click the button) to be the new location.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Floatpoint   (2 posts)  Bio
Date Reply #2 on Wed 29 Aug 2007 01:56 PM (UTC)
Message
Having the same problem as above, moved the plugins folder to my documents as suggested and still get the same error, even after changing the Global Preferences to the new folder. This has happened before when I reinstalled Mushclient after a crash and I have reinstalled it do a different drive, dont know if that is the problem or not, but it was originally on drive D: and now I moved it to C: and am getting this error as well.
Top

Posted by Shaun Biggs   USA  (644 posts)  Bio
Date Reply #3 on Wed 29 Aug 2007 03:58 PM (UTC)
Message
Try uninstalling, removing all the registry settings for MUSHclient, then re-installing within a user controlled folder. Some of Vista's security settings can prevent disc writing in certain non-user areas. Another option would be to have MUSHclient run with administrator privileges.

It is much easier to fight for one's ideals than to live up to them.
Top

Posted by Natasi   (79 posts)  Bio
Date Reply #4 on Thu 08 Nov 2007 01:55 AM (UTC)
Message
I just started using Plugins and I discovered my variables within my Plugins have not been saving. I went through the forums here and this thread and tried what was suggested and now have the plugin and its saved state file (in the state folder) all on my desktop in a user folder, yet when I start up Mushclient, it doesnt seem to be loading the saved-state file.

I can open the saved state file and it has my variables, altered as I last had them, but I cant get the plugin to load the saved variables when I open the client again. I also moved a copy of the Constants.vbs file over to the folder also, since it asked for it when I tried to load the Plugins. Anything I can be forgetting? I have the plugin loaded into both the File > Plugins and also the Global preferences > Plugins section also.
Top

Posted by Nick Gammon   Australia  (23,133 posts)  Bio   Forum Administrator
Date Reply #5 on Thu 08 Nov 2007 02:29 AM (UTC)
Message
The save state file goes into the state subdirectory of the plugins directory (which is not necessarily where the plugins actually are). See Global Preferences -> Plugins for where this directory is defined.

Make sure it is a full pathname, otherwise if it is a relative path that may change, depending on where the current directory happens to be.

Is this a plugin you wrote? Perhaps the code for loading the data from the saved state file is not correct.

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Natasi   (79 posts)  Bio
Date Reply #6 on Thu 08 Nov 2007 05:45 AM (UTC)

Amended on Thu 08 Nov 2007 05:48 AM (UTC) by Natasi

Message
Yes, it is a plugin I wrote using the wizard, this is it as follows, I cut out the triggers/aliases due to it being to long:


<?xml version="1.0" encoding="iso-8859-1"?>
<!DOCTYPE muclient>
<!-- Saved on Monday, November 05, 2007, 6:46 PM -->
<!-- MuClient version 4.14 -->

<!-- Plugin "WhoAmI_Plugin" generated by Plugin Wizard -->

<muclient>
<plugin
   name="WhoAmI_Plugin"
   author="Jwild"
   id="029fd8fc54f3c5973ce312f8"
   language="VBscript"
   purpose="Allows color-coding of enemies and aliases and a search function."
   save_state="y"
   date_written="2007-11-05 18:43:09"
   requires="4.14"
   version="1.0"
   >

</plugin>


<!--  Get our standard constants -->

<include name="constants.vbs"/>

<!--  Triggers  -->

<triggers>
 <!-- trigger stuff here -->
</triggers>

<!--  Aliases  -->

<aliases>
<!-- Aliases stuff here -->
</aliases>

<!--  Variables  -->

<variables>
  <variable name="script_enemies"></variable>
  <variable name="script_allies"></variable>
</variables>

</muclient>



Also, the pathname was all correct, as when it saved out, it was writing the save file to the state folder.
Top

Posted by Onoitsu2   USA  (248 posts)  Bio
Date Reply #7 on Thu 08 Nov 2007 06:55 AM (UTC)

Amended on Thu 08 Nov 2007 06:57 AM (UTC) by Onoitsu2

Message
well if the variables in question, that are not loading "properly" between sessions, are "script_enemies" and "script_allies" then I can see the problem right off the bat.

You are sure enough saving them in the state file, but when you re-import them again the empty ones located within the plugin file itself (not the state file) are clearing them.

You do not have to define the variables to be saved, ALL variables of "mushclient type" will be stored in the state file.

Remove the following lines...

<variables>
<variable name="script_enemies"></variable>
<variable name="script_allies"></variable>
</variables>

This should solve this issue.

-Onoitsu2
Top

Posted by Natasi   (79 posts)  Bio
Date Reply #8 on Thu 08 Nov 2007 01:25 PM (UTC)
Message
Ahh, perfect, that fixed it, thank you! One question about that though, if I wanted a default variable, such as a colour that can be changed through an alias, but that color is referred to all the time, is there a way to set a default variable that over writes itself from the save state? Worried that if they never change the default color in the variable, it will not re-load itself. Not sure if that made sense
Top

Posted by Nick Gammon   Australia  (23,133 posts)  Bio   Forum Administrator
Date Reply #9 on Thu 08 Nov 2007 07:22 PM (UTC)

Amended on Thu 08 Nov 2007 07:23 PM (UTC) by Nick Gammon

Message
I would do something like this in VBscript:


MessageColour = GetVariable ("MessageColour")

If IsEmpty (MessageColour) Then
  MessageColour = "Green"
End If


This substitutes "Green" if the variable is not in the save state file.

It is a bit simpler in Lua:


MessageColour = GetVariable ("MessageColour") or "Green"


This is because Lua returns nil if the variable doesn't exist, and the short-circuit boolean evaluation takes either the variable, or the default (in this case, "Green").

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

Posted by Nick Gammon   Australia  (23,133 posts)  Bio   Forum Administrator
Date Reply #10 on Fri 09 Nov 2007 04:04 AM (UTC)
Message
My response didn't really address the question of setting a default MUSHclient variable. Maybe this:


If IsEmpty (GetVariable ("MessageColour")) Then
  SetVariable "MessageColour", "Green"
End If


And in Lua:


SetVariable ("MessageColour", GetVariable ("MessageColour") or "Green")

- Nick Gammon

www.gammon.com.au, www.mushclient.com
Top

The dates and times for posts above are shown in Universal Co-ordinated Time (UTC).

To show them in your local time you can join the forum, and then set the 'time correction' field in your profile to the number of hours difference between your location and UTC time.


32,384 views.

It is now over 60 days since the last post. This thread is closed.     Refresh page

Go to topic:           Search the forum


[Go to top] top

Information and images on this site are licensed under the Creative Commons Attribution 3.0 Australia License unless stated otherwise.