Log in

View Full Version : [Mojo] Build 10 -- Configs and more GUI



Freddie
12-08-2009, 01:03 PM
I've tentatively decided on a design for the multiboxing part of the program from the user's point of view. Comments are welcome. This is all subject to change.

There will be five kinds of objects that the user manipulates, and a screen for each one.

-- Computers

-- WoWs

-- Toons

-- Teams

-- Key maps

Here's the Toon screen. You can customize the pictures for each toon (with screenshots, etc.) and make them any size you like.

http://mojoware.org/art/build-10.gif

The info in those screens will be stored as XML files. This will allow people to edit the files by hand, if they want to, and copy them etc. The file for the above screen looks like this:



<Toon>
<Name>Dopey</Name>
<Account>MyAccount1</Account>
<IconPath>priest_icon.jpg</IconPath>
</Toon>
<Toon>
<Name>Grumpy</Name>
<Account>MyAccount2</Account>
<IconPath>paladin_icon.jpg</IconPath>
</Toon>

(Actually that's not valid XML. It's a little bit simplified.)

yaki
12-08-2009, 01:17 PM
FYI you can edit posts...it helps on keeping down the thread count as compared to making one for every incremental change when the interval is short.

Freddie
12-08-2009, 01:38 PM
When a build has something significant in it, about which I want feedback, I start a new thread.

The previous build thread gets locked.

This arrangement was worked out with Svpernova.

The interval is irrelevant because threads are about features, not about how much time passed. Mojo is getting big features very fast. It's only five weeks old, yet already it does KM and broadcast.

There are two main reasons for starting a new thread and locking the previous one:

1. It makes uninvolved people aware of the new feature because a brief description appears in the forum index.

2. It helps focus the conversation on the most recently added feature. This is important for testing.

Flekkie
12-08-2009, 02:24 PM
Ooh a new one, I'll have a look in a bit. Didn't expect it to be so WoW focused!


About the buttons from the last thread:

I think you're probably right about this too but I think I'll have to rewrite the code that draws the buttons to make the difference between off and disabled more obvious. (Those aren't Windows buttons although they look like Windows buttons. It took me fhours to write the code that draws them. I wanted to make them look like Vista taskbar buttons except with a green glow instead of orange, but I gave up because it would have taken at least a day.) Make a minion do it! Erm, I mean trusty colleague. :D
TBH, I don't know a lot about how these open source things work, but I noticed some trusty colleagues were trying to volunteer in a previous thread..



I only meant that people might want control to go in only one direction. Imagine you have two PCs. You want one to control the other, but not vice versa.
...
I'd like to find a solution that (1) is easily seen so people know the feature exists and (2) is easy to use.
Is there is an opportunity to indicate this on the 'computers' tab/screen? You could put computer-specific settings next to each computer icon. [Edit: or click the icon to see them.] This setting might show as "Mouseover from this PC: allowed/disallowed". So when the button was on (green) then those PCs with the allowed setting would be good to go. When off, all mouseover is stopped. If only one PC, leave the button grey but don't show the computer-specific mouseover settings.

If you liked that layout then you could extend the idea: show WoW-specific (later: program specific?) info on the WoW tab, toon-specific on the toon tab, and so on.

ElectronDF
12-08-2009, 02:48 PM
One thing for the future (hotkeys time or at least keys entry time). I would like a "Return cursor back home" key, so after I mouse over to a another computer to do something and poop hits the fan, I want to get back to my normal computer as fast as possible. PVP fighting last only seconds sometimes (like 7-10) and if I spend 3-4 just getting my cursor back to home so hotkeys work and my mouse works again, that is rough.

Not sure if I give enough credit. I truely love HKN and wish the best for Mojo. I like all that I see so far. I just need to bring it up once and then I will drop it. It would be nice to have a java version so I could use it on my non-PC (just a crappy receiver, no hotkeys, no mouse, just receive the keys sent from Mojo). Just like an option that would talk to a VNC server would work. (in case you could steal VNC code and use it)

If you are looking for options to put in for fun.
Auto-start on Win start checkbox.
Auto-update checkbox (maybe prompts that new verion is available and then times out to update in ## secs).
And later on, hide window to the taskbar.

Freddie
12-08-2009, 02:59 PM
Ooh a new one, I'll have a look in a bit. Didn't expect it to be so WoW focused!
It's because I want Mojo to attract as many users as possible as fast as possible. If I focus on just WoW for the time being instead of trying to make Mojo general-purpose, (1) Mojo will work better with WoW and (2) I can write it faster.


Is there is an opportunity to indicate this on the 'computers' tab/screen? You could put computer-specific settings next to each computer icon. This setting might show as "Mouseover from this PC: allowed/disallowed". So when the button was on (green) then those PCs with the allowed setting would be good to go. When off, all mouseover is stopped. If only one PC, leave the button grey but don't show the computer-specific mouseover settings.
That's a good idea. As far as the details of seeing the info next to each computer, and changing that info, you'll be able to right click a computer and get either a menu or window specific to that computer. You'll also be able to toggle the Computers window and see it in the form of a list (sort of like a spreadsheet) where details are spelled out.


If you liked that layout then you could extend the idea: show WoW-specific (later: program specific?) info on the WoW tab, toon-specific on the toon tab, and so on.
Yes, they will all work as I just described. You'll be able to right click items in the WoWs window and the Teams window and the Toons window to get either a menu or window specific to the item. And you will be able to toggle those windows as a whole between picture view and spreadsheet view. (Microsoft calls the two views "icon view" and "report view." Maybe it would be easier to use the technical names.)

By the way, in case you're interested, you might want to read Microsoft's guidelines for designing interfaces. It explains all the different visual elements that are used in Windows programs. Tells you the names of them, how Microsoft recommends using them, etc.

Windows User Experience Guidelines (http://msdn.microsoft.com/en-us/library/aa511258.aspx)

If you don't want to read the whole thing, the section on Controls is probably the most useful.

Controls (http://msdn.microsoft.com/en-us/library/aa511482.aspx)

The program can have other, non-standard interface elements as well, but it usually saves me time to use the operating system's built-in elements.

Flekkie
12-08-2009, 03:10 PM
I Just tried it, is it purely the addition of the buttons down the left hand side? I didn't see any toon icons, and not sure where to put any XML type files or what to call them.



Some other feedback on the update process. It may be related to my firewall, not sure. I'm using the free version of Comodo at the moment.

After updating, I launch 2 WoWs and then switch broadcasting on. Then I type in my password. At the first letter on the active WoW window, I get the Comodo firewall prompt for do I want to allow so-and-such? I say yes, but broadcasting still not working. I have to close everything (WoW and Mojo), and then it works fine, and continues to do so until the next update. At least this was the behaviour after updating to build 9 and build 10, and I didn't try build 6 since it was only about mouseover.

So.. is anyone else getting this? *Frowns at firewall icon*

Freddie
12-08-2009, 03:30 PM
I Just tried it, is it purely the addition of the buttons down the left hand side? I didn't see any toon icons, and not sure where to put any XML type files or what to call them.
This build has a huge amount of new code inside but not much is visible.

If you want to try the icons, make an XML file like the sample above. Save it to Mojo's data folder. (Later on you'll be able add toons from inside Mojo itself in an easy way.)

You'll also need some image files. You can use anything you want. Save them wherever you want, and write their locations in the XML file.

Finally, you may need to set the size of icons. That's on the new Appearance Settings screen.

Freddie
12-08-2009, 03:54 PM
Not sure if I give enough credit. I truely love HKN and wish the best for Mojo.
Thanks, I appreciate it. You helped enormously with HotkeyNet. Hard to believe two years have passed, and now here we are again doing the same things again. But this will be a chance to fix all the mistakes and shortcomings.


One thing for the future (hotkeys time or at least keys entry time). I would like a "Return cursor back home" key, so after I mouse over to a another computer to do something and poop hits the fan, I want to get back to my normal computer as fast as possible. PVP fighting last only seconds sometimes (like 7-10) and if I spend 3-4 just getting my cursor back to home so hotkeys work and my mouse works again, that is rough.
Yeah it definitely needs that. I'll do this pretty soon.


Not sure if I give enough credit. I truely love HKN and wish the best for Mojo. I like all that I see so far. I just need to bring it up once and then I will drop it. It would be nice to have a java version so I could use it on my non-PC (just a crappy receiver, no hotkeys, no mouse, just receive the keys sent from Mojo). Just like an option that would talk to a VNC server would work. (in case you could steal VNC code and use it)
What operating system is the non-PC running? Mojo is never going to run on anything other than Windows or a Windows emulator or something like Wine. The source code is just too dependent on Win32 calls.


Auto-start on Win start checkbox.
I'm always reluctant to add this because Windows itself provides a way of doing this (drag the program's shortcut into Window's start folder). But I guess this is actually not so easy. I guess I'll add it.


Auto-update checkbox (maybe prompts that new verion is available and then times out to update in ## secs).
ClickOnce does this automatically every time you launch the program. Is that not good enough?


And later on, hide window to the taskbar.
I'll put that in as soon as the program has an icon.

Freddie
12-08-2009, 03:56 PM
Some other feedback on the update process. It may be related to my firewall, not sure. I'm using the free version of Comodo at the moment.

After updating, I launch 2 WoWs and then switch broadcasting on. Then I type in my password. At the first letter on the active WoW window, I get the Comodo firewall prompt for do I want to allow so-and-such? I say yes, but broadcasting still not working. I have to close everything (WoW and Mojo), and then it works fine, and continues to do so until the next update. At least this was the behaviour after updating to build 9 and build 10, and I didn't try build 6 since it was only about mouseover.

So.. is anyone else getting this? *Frowns at firewall icon*
This is happening on a single PC with nothing shown in "Connections?"

Flekkie
12-08-2009, 04:12 PM
This is happening on a single PC with nothing shown in "Connections?"Yes - the Connection Settings are set for "One PC"

Freddie
12-08-2009, 04:13 PM
I'll look at the source code and see what it's doing that makes the firewall pop and remove it. Thanks for telling me.

Edit: I think this is fixed now, but I won't post the build till later.

Flekkie
12-08-2009, 04:55 PM
Now I've narrowed down when it happens, I'll take a bunch of screenshots and document the next update, in case it happens again.

I have the firewall set very aggressively, so it checks on everything the first time it happens (including things like things like "mojo.exe is trying to modify the user interface of Wow.exe"). I have told it to treat Mojo as a trusted application and Mojo's updater as an installation program, but it doesn't seem to stick between updates. I'm guessing this is a symptom of this ClickOnce software you mentioned before, but its not an educated guess.

Maxion
12-08-2009, 04:57 PM
What is the purpose of the Toon screen? What will we be able to do on that screen?
And if it is related to something we set before starting wow, will we be ale to also tell it which character index each toon is on so that we can start each wow window with the selected chars index edited in the config.wtf file when each wow starts? (keyclone did account names like this)

Note that I don't know if Mojo handles starting up wow clients yet, but if this functionality is present/planned (it should if you are doing maximizer) I would think that selecting which characters you plan to play first might be an optional thing before launching the wows. (since not everyone has the members of each respective team in the same character index on each account)

But then again, this is only based on my speculation on what the toon screen is for. If you had different plans for it, please disregard this post as it is not really all that desirable/necessary. (hopefully blizzard will add some way to rearrange the order in which characters are listed on th character select screen in the future anyway)

Freddie
12-08-2009, 05:09 PM
Now I've narrowed down when it happens, I'll take a bunch of screenshots and document the next update, in case it happens again.
Thanks.


I have the firewall set very aggressively, so it checks on everything the first time it happens (including things like things like "mojo.exe is trying to modify the user interface of Wow.exe"). I have told it to treat Mojo as a trusted application and Mojo's updater as an installation program, but it doesn't seem to stick between updates. I'm guessing this is a symptom of this ClickOnce software you mentioned before, but its not an educated guess.
All by itself, without ClickOnce, the updated Mojo will trigger firewalls because it's a different program from the old one. The firewall knows this. You and I think of two Mojo builds as the same program but the firewall doesn't (and shouldn't).

Flekkie
12-08-2009, 05:15 PM
Save it to Mojo's data folder
Heh, no idea where that is >.<
Mojo.exe is saved in 4 different locations according to my windows explorer search, and the folders are mostly strings of numbers & letters.

But if setup will be possible within Mojo I'll just wait.

Freddie
12-08-2009, 05:29 PM
What is the purpose of the Toon screen? What will we be able to do on that screen?
Anything you can imagine doing with a toon. Log it in, change its default key bindings, set the default PC or path from which it runs, add it to a team, remove it from a team, copy its settings to another toon ...

This program is going to be very flexible. Whatever you want to do, you'll just naturally click on something to do it, however seems most natural to you, and you'll be able to do it that way. That's my goal anyway. We'll see how close I get.


And if it is related to something we set before starting wow, will we be ale to also tell it which character index each toon is on so that we can start each wow window with the selected chars index edited in the config.wtf file when each wow starts? (keyclone did account names like this)
Edit: What is the purpose of editing the index? What does that accomplish from the user's point of view?


Note that I don't know if Mojo handles starting up wow clients yet, but if this functionality is present/planned (it should if you are doing maximizer) I would think that selecting which characters you plan to play first might be an optional thing before launching the wows. (since not everyone has the members of each respective team in the same character index on each account)
The program will allow you do whatever you want in any order. It's flexible. It's not going to lock you in. If you want to launch a team, fine. (Click a Team and select launch.) If you want to launch a toon, fine. (Click a Toon and click launch.) If you want to run a WoW without a Toon, fine. (Click a WoW and select launch.) Etc.

Maxion
12-08-2009, 06:12 PM
Editing the index would change which character slot is selected when you log in to the character select screen. But if you handle this in a different way I look forward to seeing it.

Freddie
12-08-2009, 06:19 PM
Editing the index would change which character slot is selected when you log in to the character select screen. But if you handle this in a different way I look forward to seeing it.
Ah, okay, thanks for explaining.

It's possible that the *program* will do it that way behind the scenes, but the *user* doesn't necessarily need to know that.

ElectronDF
12-08-2009, 06:28 PM
The non-PC is a Mac. But I was just hoping that Mojo could talk to a VNC (again just to send keys, nothing fancy) since I am not sure there are many Mac broadcasters that work on multiple machines. And there are 000000 programs that work on mixed machines. Don't worry about it. I can just have Mojo talk to real VNC windows instead of just sending data to the VNC server (just feels clunky).

The auto-update is I have to click accept on every update I do on the non-main machine. Lots of people probably have 1 machine, so 1 click to accept update is not so bad, but having to do it multiple times gets old. You don't have to force everyone to accept updates, just give us an option for "Accept updates in ____ secs" (1-20) checkbox so we can turn the feature on and pick a time (unless you want to pick a time).

Freddie
12-08-2009, 06:48 PM
The non-PC is a Mac. But I was just hoping that Mojo could talk to a VNC (again just to send keys, nothing fancy) since I am not sure there are many Mac broadcasters that work on multiple machines. And there are 000000 programs that work on mixed machines. Don't worry about it. I can just have Mojo talk to real VNC windows instead of just sending data to the VNC server (just feels clunky).
Is it good enough if Mojo does what HotkeyNet does? What exactly does it have to do?

Please don't hesitate to tell me what you really want. I have to implement a lot of stuff anyway so maybe it fits in easily.


The auto-update is I have to click accept on every update I do on the non-main machine. Lots of people probably have 1 machine, so 1 click to accept update is not so bad, but having to do it multiple times gets old. You don't have to force everyone to accept updates, just give us an option for "Accept updates in ____ secs" (1-20) checkbox so we can turn the feature on and pick a time (unless you want to pick a time).
In other words, if you do nothing, the program starts without updating? I'll check the ClickOnce documentation and see if that's selectable by the user.

ElectronDF
12-08-2009, 07:04 PM
Actually I would like it to update in the time, since the program won't work if you have older versions talking to each other. I wanted the non-main computers to update in like 20 secs if I do nothing. I don't need everyone to want it, so that is why I put it as a default off checkbox.

Yeah, it is fine if Mojo works the same as HKN. I was just mentioning wishes. Mojo working is the priority, not it doing stuff just for me. There are probably 2 people that use PC-Mac boxing. There are probably 12-15 Mac only boxers. There are probably 2-5 Mac-Mac (multiple computers) boxers. Not worth spending time to do something that won't help a lot of people. I just thought copying VNC code would be something simple to do. Not something that is amazing, just to be able to send keys to a VNC server. Again, don't worry about it.

Freddie
12-08-2009, 07:29 PM
Actually I would like it to update in the time, since the program won't work if you have older versions talking to each other. I wanted the non-main computers to update in like 20 secs if I do nothing. I don't need everyone to want it, so that is why I put it as a default off checkbox.
Oh, okay. I just checked, and Microsoft doesn't seem to provide a way to do that. They seem to give only four choices to the developer: turn off updates completely or have it the way it is now or postpone updates till the next time the program runs or check periodically (like every week). There might be a registry setting you can change.


Yeah, it is fine if Mojo works the same as HKN. I was just mentioning wishes. Mojo working is the priority, not it doing stuff just for me. There are probably 2 people that use PC-Mac boxing. There are probably 12-15 Mac only boxers. There are probably 2-5 Mac-Mac (multiple computers) boxers. Not worth spending time to do something that won't help a lot of people. I just thought copying VNC code would be something simple to do. Not something that is amazing, just to be able to send keys to a VNC server. Again, don't worry about it.
So you'd like Mojo to have the RFB protocol built into it (that's the protocol used by VNC) so it can talk to VNC directly as if Mojo itself is an RFB program?

I can imagine adding that down the road. That might be a good semi-standalone project for a programmer who wants to volunteer to work on Mojo. They could write a sort of driver (not a driver in the OS/kernel sense) that allows Mojo to send keystrokes via RFB.

ElectronDF
12-08-2009, 07:43 PM
I hear you and thank you. /bow

Aragent
12-08-2009, 08:32 PM
when Mojo.setup installs on windows 7 Ultimate its installing itself as far as I can tell in a non standard area.
C:\Users\[username]\AppData\Local\mojo and C:\Users\[username]\AppData\Local\apps\2.0\

Under desktop shortcut properties it only lists the path to the shortcuts name.
C:\Users\[username]\Desktop

In C:\Users\[username]\AppData\Local\mojo you have
mojo.draw_positions.txt
mojo.log.txt
mojo.settings.txt
mojo_engine.log.txt
mojo.engine.settings.txt

C:\Users\[username]\AppData\Local\Apps\2.0\Data\0330C0L4.HCJ\VPHZ3526 .H6P
I am assuming this is where we may add the xml files for the toons.

Now for the masses this is looks to be far more complicated and confusing
than just having the program install under

C:\Program Files\MOJO\
My hope also is that with mojo.setup, we will be able to choose in the future where we wish it to install.

Freddie
12-08-2009, 09:34 PM
when Mojo.setup installs on windows 7 Ultimate its installing itself as far as I can tell in a non standard area.
It's being installed by Microsoft. Microsoft chooses the location of the binary files. This is how ClickOnce works.

This has been discussed here several times already.

The location is a cache, like the cache your browser maintains for web pages. The real copy of Mojo is on the web. You probably don't care where your browser caches web pages, and for the same reason, you don't need to care where ClickOnce caches Mojo's binaries. All you need is the data files, and (as I'll tell you in a moment) they are in the standard place where people should expect to find them.


In C:\Users\[username]\AppData\Local\mojo you have
mojo.draw_positions.txt
mojo.log.txt
mojo.settings.txt
mojo_engine.log.txt
mojo.engine.settings.txt

That's Mojo's data folder. It's in one of the two standard places for application data as defined by Microsoft. It's Microsoft that sets the standards, not you or me.

Every Windows user account has two folders for user application data. The locations vary from one version of Windows to another, but you can find them quickly by opening a command window and typing these commands, which use environment variables which are defined by the OS:

(Edit: This isn't something a user will ever need to do. I'm telling you this because you're curious.)


dir %APPDATA%
dir %LOCALAPPDATA%


Now for the masses this is looks to be far more complicated and confusing
than just having the program install under

C:\Program Files\MOJO\
First of all, the masses won't be confused because 99% of them will never know or care. They have no reason to want to know about these folders. These are implementation details. These are technical things.

Second, the binaries cannot go there because ClickOnce won't put them there.

Third, data files should not go there because Microsoft tells programmers not to put data files there.

Microsoft tells programmers to put the user data where I put it (or alternatively in %APPDATA%).


My hope also is that with mojo.setup, we will be able to choose in the future where we wish it to install.
Why? Can you give me a reason?

Let's be clear on the tradeoff here.

In order to give users the option of controlling the location of Mojo's binaries -- an option that will be exercised by only a small fraction of them -- everybody has to give up ClickOnce.

ClickOnce has tremendous advantages. It's reliable; it's convenient; it's supported by a team at Microsoft; it guarantees that every user's Mojo is up to date; it's tested by Microsoft's quality assurance professionals on every version of Windows and hundreds of different computers; it's been tested by millions of users over a period of four (five?) years; and for what it does, it's extremely fast.

On the other side of the ledger, the advantages of installing binaries in c:\program files is ..... what exactly?

That the pathname would be shorter? Nobody will ever have to type it anyway.

P.S. Another thing. We're only talking about the installer. We're not talking about limitations on what you can do with Mojo. If you want to copy Mojo from the ClickOnce cache to c:/program files or anywhere else, go ahead. Nobody's stopping you. You can put it anywhere you want. The installer won't, but you can.

thinus
12-08-2009, 10:16 PM
Let's be clear on the tradeoff here.

In order to give you control over the location of Mojo's binaries, everybody has to give up ClickOnce.

ClickOnce has tremendous advantages. It's reliable; it's convenient; it's supported by a team at Microsoft; it guarantees that every user's Mojo is up to date; and for what it does, it's extremely fast.

On the other side of the ledger, the advantages of installing binaries in c:\program files is ..... what exactly?

That the pathname would be shorter? Nobody will ever have to type it anyway.

Mojo is pretty small and I don't see it growing too big either which doesn't really present any problems for me. In general though, when you have limited space on expensive high performance storage like a SSD or Velociraptor you want full control over where application binaries and application data is stored. I don't know whether you can configure ClickOnce on the local PC in some way to control where it places binaries.

This is the thing that pisses me off about Microsoft though, they concentrate on flashy marketable changes and neglectbasic O/S features. Even ignoring any applications you might install and only looking at the O/S, have you ever tried moving the user profile folder, moving My Documents or Libraries, changing the default path of Program Files? Where do all the O/S updates download to, where are all the temporary files and rollback points stored?

You would expect a simple interface that allows you to configure all these locations, instead you have to resort to numerous registry hacks and environment path changes. In the case of user profile folders there are even more complications. On my laptop it was easier to just use a 3rd party partitioning tool to resize partitions instead of trying to change the location of the user profiles.

FU Microsoft. At least they improved networking in Vista / Windows 7. Finally.

Sorry, had to vent.

Flekkie
12-08-2009, 10:28 PM
Would it be easy/appropriate to add a link from the actions menu to open the relevant folder? Alongside the create icon action.


I know the My Documents folder and others in that area can be moved to a different location by right-clicking them and editing the details on the locations tab. But I couldn't see this functionality for the AppData or the whole [Username] folder :/

Freddie
12-08-2009, 10:36 PM
In general though, when you have limited space on expensive high performance storage like a SSD or Velociraptor you want full control over where application binaries and application data is stored. I don't know whether you can configure ClickOnce on the local PC in some way to control where it places binaries.
Unless you let Mojo page out to disk the location of its exe and dll files has no effect on performance. No effect at all. Given the way it's written and used that not likely to happen even if you're short of RAM, and that probably isn't very likely either for the category of users that you're talking about.


I don't know whether you can configure ClickOnce on the local PC in some way to control where it places binaries.
You can't tell ClickOnce where to put the files, but you yourself can put them wherever you want. Just copy or move them like any other files.

Freddie
12-08-2009, 11:10 PM
Would it be easy/appropriate to add a link from the actions menu to open the relevant folder? Alongside the create icon action.
I don't think ordinary users have any need to open that folder or know about its existence. Moreover, they should be discouraged from opening it because if they change any of the files, they may break their Mojo installation.

It's called user data not because users should mess with it. It's called that because it's created on a per-user-account basis by Mojo.

The only reason we're discussing it is because I mentioned it in order to tell you how to add icons before the program has the user interface that people will normally use for that purpose.

In a day or two, I'll publish a build with the user interface and nobody will ever have to think about that folder again. :)

I'm exaggerating a little -- a small minority of users will want to fool around with the files manually. Two percent? Five percent?

That minority doesn't need a menu option. They will know where the folder is because it's in the standard place.

Freddie
12-08-2009, 11:22 PM
I should add that the Debug Menu is for testers. It's a temporary part of the program. Some of the stuff we're discussing is on that menu.

thinus
12-08-2009, 11:41 PM
Unless you let Mojo page out to disk the location of its exe and dll files has no effect on performance. No effect at all. Given the way it's written and used that not likely to happen even if you're short of RAM, and that probably isn't very likely either for the category of users that you're talking about.

What I meant is that I have limited space on the SSD, 64GB, and the O/S and WoW are both installed on the SSD which leaves me with 10-12GB to play with. Ideally I only want to install performance critical applications on the SSD and as you say, there is no performance reason to have Mojo on the SSD.

However, because the O/S is installed on the SSD my user profiles, temp files, everything else are also on the SSD. This means ClickOnce also install to the SSD.

But as I said earlier, unless Mojo grows to 100s of MBs, it will never be a concern with regards to available disk space, I am more irritated by Microsoft not providing me the ability to easily configure where different kinds of data is stored.

Freddie
12-09-2009, 12:19 AM
What I meant is that I have limited space on the SSD, 64GB, and the O/S and WoW are both installed on the SSD which leaves me with 10-12GB to play with. Ideally I only want to install performance critical applications on the SSD and as you say, there is no performance reason to have Mojo on the SSD.
Oh, I see.

How about movng the whole %LOCALAPPDATA% folder (which includes the ClickOnce directory) to another hard disk. You right click the folder, select properties, click Location, and pick a spot.

I've never tried it, but I think that's how it works.

Aragent
12-09-2009, 02:17 PM
Thank you Freddie for your response on the Mojo.setup and the installation directorys.

I hope I didn't come across as condemning or condescending or confrontational as that was not my intent.
As a network engineer I am aware that Network applications and web applications will store there data in %APPDATA% %LOCALAPPDATA%

I guess I was being a bit slow and it hadn’t dawned on me that mojo was a web app.

I made an assumption that once hotkeys were added users would want or need to store Hotkey data centrally to the data files. So the general user would want need access to the folder. (Probably wrong for me to jump to that conclusion this early in the design process.) And just thought the location was a bit complicated for General users but as you have stated your design plans that users will almost never have to access that folder so this is irrelevant.

And Lastly my concern was as thinus explained as more multi-boxers are transferring to SSD drives to run OS and wow most may wish the option to have greater option on whats is being installed on the ssd and what’s being stored on the data drives.

And that this was better brought up earlier than later.

Freddie
12-09-2009, 03:12 PM
I hope I didn't come across as condemning or condescending or confrontational as that was not my intent.
I didn't take it that way. I should add that I'm ambivalent about ClickOnce myself. It's being used on a trial basis. Maybe I'll replace it with an MSI installer. But I want to base this decision on the actual facts.


I guess I was being a bit slow and it hadn’t dawned on me that mojo was a web app.
Mojo's not a web app. Right now, you can copy it to any folder you want and clck Mojo.exe. It will run perfectly well from any location on your hard disk.

It's the installer (ClickOnce), not Mojo, that's making you say "web app."

The installer is one thing. Mojo is something else.

Somebody could write an MSI (traditional) installer for Mojo tomorrow. Mojo will work fine with it. Mojo knows nothing about the installer. There is nothing in Mojo that interacts with the installer in any way.


I made an assumption that once hotkeys were added users would want or need to store Hotkey data centrally to the data files.
Are you thinking of something like a script in HotkeyNet? That's a different thing. That's a file created by the user. With files of that kind, users will (of course) choose the names and locations.

We've been talking about files created by the program for its own use, that will not normally be seen or manipulated directly by the user. That's a different thing.


And Lastly my concern was as thinus explained as more multi-boxers are transferring to SSD drives to run OS and wow most may wish the option to have greater option on whats is being installed on the ssd and what’s being stored on the data drives.
As I said above, I don't think that's a problem because, as far as I know, it's extremely easy to relocate %LOCALAPPDATA% to a a different hard disk.

But I've never tried it, so maybe I'm wrong. And maybe moving all of %LOCALAPPDATA% would create other problems

Freddie
12-09-2009, 04:42 PM
It seems to be extremely easy to move the %LOCALAPPDATA% folder, at least on Vista.

However I'm scared to try it on my PCs since I use them all for work and I don't want to risk screwing anything up.

Could somebody test this and see if it works?

You just open an explorer window and right-click the local folder (it's under Desktop, under your account name, under AppData.

Select Properties from the bottom of the menu.


http://mojoware.org/art/move_local_app_data_1.gif


That gives you a pop up. You enter the new location. It can be a hard disk if you want.


http://mojoware.org/art/move_local_app_data_2.gif


Edit: After you do that, Mojo should get moved to the new location along with the folder. You can tell if that happens by launching Mojo after the move, clicking Debug on the menu, and displaying the install directory.

Aragent
12-09-2009, 08:32 PM
First glance with Windows 7 Ultimate it does not seam to be as easy to move and re-associate the folder

when you get to appdata and do a properties it does not give you a place to change localization of the file or folder.

I will dig a little deeper later.

thinus
12-09-2009, 08:38 PM
Thanks for the screenies. I played around with it a little but I haven't risked moving anything yet. I was initially looking at the root of the user profile folder and you cannot change the location from there, you need to pick the individual sub-folders and relocate them one at a time. I see they added the location changing features in Vista. The machine I changed partitioning on due to the complexity of trying to move the user profiles was an XP machine.

But to me, as far as Mojo is concerned, it is really not a big deal. I just get frustrated when things I expect from an O/S are not there.

Freddie
12-09-2009, 08:40 PM
when you get to appdata and do a properties it does not give you a place to change localization of the file or folder.

As shown above, you have to click Local, not AppData.

Aragent
12-10-2009, 08:15 AM
As shown above, you have to click Local, not AppData.

Thats what I get for trying to do it in a hurry.

However Had more time and tried it under local.

This is what I got when attempting to relocate the dir
D:\Users\[Username]\AppData\Local\

Failed to build the list of regular subfolders under
"C:\Users\[Username]\AppData\Local\EvaluateDiagnostics\3391462126"
Access is denied.


This was done under my Admin account.
However when I have a bit more time I will see if it shall work under safemode.

ElectronDF
12-10-2009, 11:25 AM
Wait, you are worried about <100MB program and data? You would have luck with your internet cache (should be moveable), your pagefile (might help with a second device for use, might hurt since slower device), or WOW's data (not sure how to do it, just seems like the hugest part of WOW is the data).

I guess the expensive fix is to get another SSD and put programs only on it with your OS on your first one. What happens when other games comes out and you want them to run fast? I personally went with raided 10k rpm drives. Sure like $150 each, but I like that they shouldn't wear out. I thought that SSDs wear out the more you use them. Not sure.

I guess I am not much help. No harm meant.

Freddie
12-10-2009, 12:12 PM
However Had more time and tried it under local.

This is what I got when attempting to relocate the dir
D:\Users\[Username]\AppData\Local\

Failed to build the list of regular subfolders under
"C:\Users\[Username]\AppData\Local\EvaluateDiagnostics\3391462126"
Access is denied.


This was done under my Admin account.
However when I have a bit more time I will see if it shall work under safemode.
Thanks a lot for testing this. I put the error message in Google and found some stuff about read-only permissions on folders and group policy. Maybe one or both of those things is involved.

Aragent
12-11-2009, 10:39 AM
Thanks a lot for testing this. I put the error message in Google and found some stuff about read-only permissions on folders and group policy. Maybe one or both of those things is involved.

No problem Had more time to tinker with this, and Found as I suspected that the Users\[Username]\Local\Appdata
Could be moved and Re-associated from Safe-mode.