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.
Entire forum
➜ MUSHclient
➜ General
➜ Level Timer - with seconds
Level Timer - with seconds
|
It is now over 60 days since the last post. This thread is closed.
Refresh page
Posted by
| Nikkei
Singapore (8 posts) Bio
|
Date
| Sun 18 Jun 2006 11:17 AM (UTC) |
Message
| Hi, may I get help with a timer that gives minutes and seconds for each level?
level message:
Congratulations hero. You have increased your powers!
Output Message:
grouptell Leveltime: 90seconds, 1.500 minutes
Can anyone help me think of a simple script?
Also when i loaded the lvltimer plugin from mush, an alert msg came out, "unable to create the plugin save state file blablabla-state.xml" | Top |
|
Posted by
| Nick Gammon
Australia (23,120 posts) Bio
Forum Administrator |
Date
| Reply #1 on Sun 18 Jun 2006 09:30 PM (UTC) |
Message
| The level timer plugin (Level_Timer.xml) should do it if you amend the trigger. If it can't save its state maybe there is no "state" directory.
Depending on where you installed MUSHclient, state files should be saved somewhere like:
C:\Program Files\MUSHclient\plugins\state
Make sure you have such a directory under your MUSHclient install directory.
It needs the state file to save to disk when you previously levelled, in case it isn't in the same session. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Shadowfyr
USA (1,788 posts) Bio
|
Date
| Reply #2 on Tue 20 Jun 2006 12:04 AM (UTC) |
Message
| Hmm. Bit of a question on a similar issue.. When I installed XP, I just copied everything straight over from the old install. If I "manually" save the world file I get the same error on "every" installed plugin. However, when Mushclient saves states on its own (some do in fact show changes as of 06/19/2006, so I know they are saving), they are updated correctly. Any idea why this might be happening Nick? It isn't a huge problem, since it is saving the states normally, but its sort of odd if I need to change something in the world file and save it, only to get a whole list of, "unable to create the plugin save state file blablabla-state.xml", errors for every installed plugin. This is using version 3.74. | Top |
|
Posted by
| Nick Gammon
Australia (23,120 posts) Bio
Forum Administrator |
Date
| Reply #3 on Tue 20 Jun 2006 02:44 AM (UTC) Amended on Tue 20 Jun 2006 02:54 AM (UTC) by Nick Gammon
|
Message
|
Quote:
... but its sort of odd if I need to change something in the world file and save it, only to get a whole list of, "unable to create the plugin save state file blablabla-state.xml", errors for every installed plugin ...
OK, let's work this one through. First the error message should have given a full pathname. Does that path actually exist? Something like:
C:\mushclient\plugins\state\03c761d33c14fbd2d442f040-fba8f08ebbdd03bcae94ab05-state.xml
In this example, confirm the directory 'C:\mushclient\plugins\state\' exists.
When MUSHclient saves a state file it creates the pathname like this:
- Plugins directory - print (GetInfo (60)) - to see what this is. If this string is empty - failure.
- Append: 'state\'
- Append: world ID - print (GetWorldID()) - to see what this is. If this string is empty - failure.
- Append a hyphen.
- Append the plugin ID (see inside plugin for what this is).
- Append: '-state.xml'
It then attempts to create and open this file for writing, writes the plugin variables to it, and closes it. If it cannot open the file (or create it) you will get that error message:
Unable to create the plugin save state file: (file name as above)
Quote:
If I "manually" save the world file I get the same error on "every" installed plugin.
This is a bit of a puzzle, except that maybe somehow the plugins directory is changing midstream if you manually save the world. I would check what it is from GetInfo (60) and see if a different value ends up in there after a manual save compared to an automatic save.
Maybe check under Global Preferences -> Plugins, to see what value is there for the Plugins directory. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Shadowfyr
USA (1,788 posts) Bio
|
Date
| Reply #4 on Tue 20 Jun 2006 04:33 AM (UTC) Amended on Tue 20 Jun 2006 04:35 AM (UTC) by Shadowfyr
|
Message
| Ok, as one example>
"Unable to create the plugin save state file:
.\worlds\plugins\state\b4231b380ebf45f5c61edce-b5a12674355d40240455d8a1-state.xml"
The global plugins directory is: .\worlds\plugins
A directory list shows:
06/19/2006 09:08 PM 541 b42313b380ebf45f5c61edce-9365fba7c9ec60a3b12eb729-state.xml
06/19/2006 09:08 PM 1,581 b42313b380ebf45f5c61edce-b5a12674355d40240455d8a1-state.xml
06/19/2006 09:08 PM 487 b42313b380ebf45f5c61edce-b8b341965ebdc25f541daecf-state.xml
06/19/2006 09:08 PM 948 b42313b380ebf45f5c61edce-d1e9332dc13f7b13e8e4eeb5-state.xml
06/19/2006 09:08 PM 1,157 b42313b380ebf45f5c61edce-fba8f08ebbdd03bcae94ab05-state.xml
All five are failing when doing a manual save, yet they are obviously there and all up to date as of when I logged off. I even tried to reinstall the latest version over the one I simply copied into place and it didn't fix it. Its almost as though somehow the files are access locked when you try to do a manual save, but are unlocked during normal operation, or XP is getting confused and thinking they are "exclusive" to the client and that the manual save isn't the same application somehow. This is all quite strange...
Oh, its XP Pro sp2 and in admin mode, since I haven't quite got everything tweaked to where I am comfortable running a limited account, so it can't be an access level violation, as far as I understand how that "should" work. | Top |
|
Posted by
| Nick Gammon
Australia (23,120 posts) Bio
Forum Administrator |
Date
| Reply #5 on Tue 20 Jun 2006 05:01 AM (UTC) |
Message
| I'm a bit worried about where ".\worlds" location is. It might depend on where the current directory is. I would go into global configuration and put a specific path there. |
- Nick Gammon
www.gammon.com.au, www.mushclient.com | Top |
|
Posted by
| Nikkei
Singapore (8 posts) Bio
|
Date
| Reply #6 on Tue 20 Jun 2006 01:11 PM (UTC) |
Message
| Unhidden my mushclient folder, and set the ./world for plugin as exact path. Yay no more error msg.
For the timer however, how do I amend that plugin to work for my case? Currently it shows days and minutes.
I need it to send to world only seconds, and the equivelant minutes.
Example: If i level in 90 seconds, it will show:
grouptell Level in 90 seconds, 1.500 minutes
Not sure how to code, anyone can advice how to amend the plugin? Or do I even need a script to handle this? Prolly afew triggers will do?
Thanks alot :) | Top |
|
Posted by
| Shadowfyr
USA (1,788 posts) Bio
|
Date
| Reply #7 on Tue 20 Jun 2006 06:22 PM (UTC) |
Message
| Now that is damn strange.. lol I think you have a "little" code problem in the global settings. Yes, apparently .\worlds "is" some current directory in the manual save, instead of appending the mushclient path in there it just sticks the current one in it. More interestingly, the only way to fix it is to adjust "both" paths in Global Preferences, which doesn't mean just clicking the button, seeing that its is pointing at the right place, then scratching your head in complete confusion. I had to select a different directory first, then select the correct one for the dialog to actually change it.
I think this qualifies as a minor bug Nick, one that probably didn't appear on my other system because I normally have a habit of setting the "execution path", or what ever its called, in the shortcuts to the executable directory. Never understood why the hell windows doesn't do that automatically myself. :p But, your getting inconcistent behaviour here, where the auto-save knows what it is doing, but the global system doesn't have a clue that the "." should refer to the mushclient directory path. It would probably be safe to fix that by automatically checking for that and substituting the correct path, instead of relying on Windows to know where its "supposed" to be doing things, which in this case is probably the bloody desktop, or where ever the heck it places quicklaunch shortcuts. | Top |
|
Posted by
| NeoFryBoy
USA (42 posts) Bio
|
Date
| Reply #8 on Sun 25 Jun 2006 05:11 AM (UTC) |
Message
| I just wanted to mention, I've been taking Atreidess' zMud scripts and switching them to MUSH scripts, but I've goto finish debugging the pot script before I set to work on the leveling script. | Top |
|
Posted by
| Nikkei
Singapore (8 posts) Bio
|
Date
| Reply #9 on Sun 25 Jun 2006 05:40 AM (UTC) |
Message
| Thanks for the help all! managed to alter the lvl timer plugin enuff for what I need :)
Here are the outlines:
Trigger 1:
Match: You gain * trains.
Send:
world.SetVariable "puptrain", "%1"
Trigger 2:
Match: Lucky! You gain an extra * training session*
Send:
world.SetVariable "bonustrain", "%1"
dim oldtime
dim newtime
dim minutes, duration, seconds
oldtime = GetVariable ("last_level_time")
'
if IsEmpty (oldtime) or not IsDate (oldtime) then
SetVariable "last_level_time", now
Note "Level time noted."
end if
'
duration = DateDiff ("s", CDate (oldtime), Now)
minutes = (fix(duration / 60))
seconds = duration-minutes*60
'
world.send "gt Level Time: " & minutes & "m " & seconds & "s + " & (cint(world.getvariable("puptrain")) + cint(world.getvariable("bonustrain"))) & " Trains"
SetVariable "last_level_time", now | 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.
29,267 views.
It is now over 60 days since the last post. This thread is closed.
Refresh page
top