Fully portable hedgewars!
Thu, 2009-08-27 20:53
Thanks Smaxx!
Smaxx allegedly wrote:
Just finished making it portable in less than 10 minutes.Think this will be in the next release (0.9.12).
hedgewars.exe --config-dir=..\config
Saves the game config as well as all profiles etc. in a sub dir of the installation folder, e.g. "C:\Games\Hedgewars\config".
Thank you very much for making this work Smaxx!
I can now take my settings, team and everything else with me to all my computers easily!
You can make portable. There are tons of programs for that.
HTML = How To Meet the Ladies
Here is my Unofficial Manual for HW. Hope you like it. Still working on it. Don't worry. Will get it finished...Sometime in the future.
The user data (saves and stuff) is stored under %USERPROFILE%\.hedgewars so its not portable at all.
If it was all I had to do was to keep a single folder with all the files and everything would work just fine, allowing me to test and create new images and names for the game no matter where I was directly on my flash drive. Hope i was a little more clear now on what I'm suggesting.
If you can't make something, that doesn't mean it's not possible. The process of making a portable application involves collecting ALL the previous folders and putting them in a single one INCLUDING the one in the user profile. You will still have different folders though since most good software products (if not even ALL of them) devide the different types of data they install and use in different folders (for obvious reasons). Besides - HW is open source and I'm almost 100% sure that you can edit the destination folder from the source and choose it to be somewhere else - not in your user profile.
HTML = How To Meet the Ladies
Here is my Unofficial Manual for HW. Hope you like it. Still working on it. Don't worry. Will get it finished...Sometime in the future.
It's a good suggestion
Just finished making it portable in less than 10 minutes.
Think this will be in the next release (0.9.12).
My examples are related to Windows - but should work on other systems the same way. Note that this won't work with current stable release (0.9.11)!
hedgewars.exe --config-dir=..\config
Saves the game config as well as all profiles etc. in a sub dir of the installation folder, e.g. "C:\Games\Hedgewars\config".
hedgewars.exe --config-dir=\\server\hwconfig
Saves the game config as well as all profiles etc. on a shared ressource (server hard disk for example)
hedgewars.exe --config-dir=\\server\hw-%username%
Saves the game config as well as all profiles etc. on a shared ressource in a special folder for each user/login name.
Wooooaaa, thanks a lot guys!
I'm sure I'm not the only one that's gonna be really happy about this!
So I'm looking forward the next version even more now!!
Originally I was thinking about something like giving priority to the directories inside the root directory of the game, and if they didn't exist, then the ones under %USERPROFILE%\.hedgewars would be used, but that way works too with a little batch file to boot it up and it's all done.
EDIT: No, wait, think that's exactly what you've done, i was the one who didn't got it right away. :P
I'll also give out some feedback when I get to test it out.
Never heard and seen a portable application in Linux except portable Win applications through Wine...
HTML = How To Meet the Ladies
Here is my Unofficial Manual for HW. Hope you like it. Still working on it. Don't worry. Will get it finished...Sometime in the future.
It should be portable if there are all dependencies, its compiled against those versions, etc.
But even if that won't work you could define other locations for your savegames (maybe even using the same ones for all installations in a dual boot environment).
Uups, there is "portable" in Linux too. Sorry.
HTML = How To Meet the Ladies
Here is my Unofficial Manual for HW. Hope you like it. Still working on it. Don't worry. Will get it finished...Sometime in the future.
Well, i got some extra ideas so i had to make a new post reply.
+ Make the sound shortcuts ([9] and [0] by default) a little less sensitive.
++ Optionally increase the unit from 2 to 4 or 5, but it's not really needed since this way we have more control over the sound volume.
+ Add a weapon that works like the Axe in Worms that cuts the target HP in half. (like a Voodoo Doll or a "Tombery's Knife" (from the Final Fantasy series))
Also, regarding the server lobby, it's a little inconvenient that sometimes other people cant join to spectate when we chose to "Restrict Joins" since what it does is taking the room off the list.
Wouldn't it be better to make it work a little differently? Like adding another field before the room's name so we know what to do regarding that room.
Example:
no icon\green check-mark = work as usual
key = locked to the players already inside (but allows spectators)
red key = locked to the players inside and does not allow spectators
To implement this easily it should just be needed to kick all the players that were not involved in the match when it ends from the room.
Ok, just updated my thread so I didn't had to create a new one and flood the forum.
More updates to come. (more like a drastic main-post-cleanup)
+ GUI: I'll leave that to someone else to decide
+ Voices: Actually thought the current russian one is like that - maybe i haven't heard it often enough but I thought it's talking English rather often.
+ GUI background: QT isn't really made for animations (at least not the way we use right now). Falling hogs with different expressions, hats, etc. would require a lot mor ressources right now.
Problem #1 regarding the parameter: Just use ".\userdata" instead of "..\userdata" or use an absolute path. It's always relative to the game's base folder iirc.
#Problem #2: Recompile with a custom path set/predefined (it's just a QString object). Saving to app folder by default would break the game under Windows Vista/7 if run from the default program files installation folder (as to modify it's contents your app has to run with full admin rights).
Thanks for the quick reply Smaxx.
Regarding the GUI corner suggestion, the idea was just to make the angle more subtle, since currently on some corners the boxes inside that yellow border are as big as them.
Now about the voices... i meant "english with indian accent".
And since i neved used it and haven been able to play for a month now i forgot we already had a russian voice, lol. Just thought it would be fun and easy to come up with lines for that one.
#1 Thanks, that fixed it for me!
#2 It's OK, I need my Windows to work, so Vista or 7 is out of the question. Besides the whole point is not having to install it anywhere, and be able to carry it on my flash-drive. I'll put some work into that soon. Oh and would the latest SVN do the trick?
Both, latest SVN and 0.9.12 source (as well as the precompiled files) have it enabled/built in.
Smaxx, what about the new audio SDK that you're using? This should be included in the portable version. Otherwise it won't be portable. I have no idea if this is actually included in HW or has to be downloaded and installed separately (long time ago in a galaxy far far away when the Nightly build was still there I installed OpenAL first then HW, so I kind of missed that part if it's included in HW's installation in the stable release), so sorry if I talk bullshit.
HTML = How To Meet the Ladies
Here is my Unofficial Manual for HW. Hope you like it. Still working on it. Don't worry. Will get it finished...Sometime in the future.
OpenAL (and the openalbridge library) aren't used right now due to problems especially on some unix systems.
Its just in SVN to wait for its reactivation and not even called right now.
OpenAL consists of only 1 or 2 basic files, so those DLLs (in case of Windows) could be put on the portable drive as well, but they should be installed on the system (using either the default installer or soundcard's driver installation). It's very similar to OpenGL which is required as well.
So I've added a lot more suggestions, observations and little things to the main topic, but the one that concerns me the most is this one:
+ The teams ALWAYS play in the same order they are added to the room, we really need to add a random factor here!
So if you add team: A, B, C, D and E in the same order I listed them, they'll ALWAYS get their turn to play in this exact same order!
Thanks for the info, Smaxx.
Inu, don't see the connection between your post and the topic of this thread BUT here's the answer:
You have teams A, B and C. The first team to start is the first added in the list of the room. It's just make like that. So if you won't the order to be A,B,C you have to put them in the list in the order A,B,C (A is on the top of the list, C is the last). If you want to have B,A,C for example, you have to fill your list in the order B,A,C (B on the top, C at the bottom) etc. etc.
PS: I'll add a suggestion that might solve this problem in a very smooth and tidy way.
HTML = How To Meet the Ladies
Here is my Unofficial Manual for HW. Hope you like it. Still working on it. Don't worry. Will get it finished...Sometime in the future.
The "1st come 1st served" situation is just not nice, and no one is giving away the 1st position as they know they are likely to make at least 1 hog go fishing in right in the first turn.
Plus the "randomness" would add the "expectation" value and excitement.
I just keep everything on the same thread so the forums don't get messy so fast. I don't see any moderator deleting the old and useless ones all the time. :P
Updated the suggestion list now that the newest version is out.
Hope everyone have fun with 0.9.14 and feel free to post and comment.
And 5 months after... 4 new suggestions added!
Feel free to comment.
No offense, but would be really nice if you could post your new suggestions in new posts instead of updating your initial post. Lot more convenient to read.
Some small notes:
Axe like weapon - 0.9.14 will feature the Hammer (takes 1/3 health and knocks hog into the ground).
Game rules can be seen while the game is paused or shows the "really quit?" message (listed twice).
Columns in room list - that seems to be a Qt issue.
Minimize frontend - was in for a short time but there are still some issues if the engine crashes or fails to start.
Rule filters - afaik that's intended as it's meant for those that want to play the original rules rather than some modified ones.
Always thought it was better to recycle old posts as long as they didn't had too much stuff in them. I'll make sure to retire this one next time I edit it.
But I was bored beyond limits and never worked with Qt before so even the simple changes I want to make were taking too long to find and test out, so i came to edit my post before i forgot what i had in mind. :P
Regarding the game rules I just noticed some useful information is still missing, that's all. (1) turn time, (2) dud %, (3) damage modifier, and (4) mine timer.
Need to search about those columns issues too. Fixing the space distribution and organizing the games by status by default would definitely improve the usability a great deal.
The rule filters are indeed really great, just a shame they're not inverted, I'd love to filter out those boring monkey-rope games. :P
...and thanks for commenting.
hedgewars.exe --config-dir=..\config doesn't seem to work anymore (for Hedgewars 0.9.14)
Could the devs please implement a simple way to make the game portable ?
Er. My apologies. Does look like Smaxx broke that for windows.
I hardly ever look at the windows code.
If its any comfort, Linux and OSX work fine
Looks like the goal was to integrate more with windows so invokes some windows system path lookup without checking that the override was set.
My desire to learn how windows does things is close to 0, but:
SHGetFolderPathA(0, CSIDL_PERSONAL, NULL, 0, path))
If that can be overridden with some environment hack, I guess you're ok. Otherwise, a frontend patch will be needed to fix this behaviour.
--
Oh, what the heck. 1PLXzL1CBUD1kdEWqMrwNUfGrGiirV1WpH <= tip a hedgewars dev
Um. still checking this, but it does seem to still use --config-dir if it is set, regardless of platform. so analysis above is wrong. Still not sure what's up on your system
--
Oh, what the heck. 1PLXzL1CBUD1kdEWqMrwNUfGrGiirV1WpH <= tip a hedgewars dev
Yeah, it still works. I'm on windows and use it all the time and it's still working