Xonotic Forums
Xonotic Installer - I'll make. - Printable Version

+- Xonotic Forums (https://forums.xonotic.org)
+-- Forum: Creating & Contributing (https://forums.xonotic.org/forumdisplay.php?fid=10)
+--- Forum: Xonotic - Development (https://forums.xonotic.org/forumdisplay.php?fid=12)
+--- Thread: Xonotic Installer - I'll make. (/showthread.php?tid=1058)



Xonotic Installer - I'll make. - Minkovsky - 10-01-2010

Let's face it, there are many Windows users out there who don't know jack crap about programs, and they'll ask a million and one times, "how do i install this?", "help where do i put maps" and stuff like this. And that's why I want to make an installer, and maybe also a shell extension called Pk3Loader, which will associate itself with PK3 files, and it's only purpose will be to run in Admin mode to copy maps to Xonotic Data directory.

What do you think about this?


RE: Xonotic Installer - I'll make. - kuniu the frogg - 10-01-2010

but xonotic 1.0 will work like this, noob-windows-user (like me) downloads the game, double-clicks on .exe file and plays the game (i think someone was mentioning that beta will also work that way).


RE: Xonotic Installer - I'll make. - pyr0 - 10-01-2010

An installer has already been mentioned in the Nexuiz forums.
You might want to use NSIS: http://nsis.sourceforge.net/Main_Page

But its easier for the devs to deploy one package for win/unix/mac.


RE: Xonotic Installer - I'll make. - divVerent - 10-01-2010

Generally, I'd prefer to ONLY package the zip archive for all platforms. However, a small NSIS installer that downloads the zip, why not. If it also can put a launcher in front of Xonotic that checks for a newer release, and can upgrade, even better. But just a huge exe NSIS installer is not really worth much.

So, the ideal Xonotic installer:
- is about 1MB in size, or less
- downloads Xonotic engine and data, extracts and installs it
- is independent from Xonotic version (always downloads and installs the current one)
- provides uninstaller that also asks whether or not to keep game settings
- allows updating by simply running a newer installer, retains old settings
- puts a launcher in front of Xonotic startup to check for updates
- provides a .pk3 shell extension (and possibly even .pk3 manager where you can easily remove them, or "install" pk3s from dlcache)


RE: Xonotic Installer - I'll make. - jal - 10-02-2010

The best thing about using a installer is that you can easily register file extensions and uri protocols so you can open demos with a doble click or connect to servers from webs with a click.


RE: Xonotic Installer - I'll make. - Minkovsky - 10-02-2010

Cross-checking your post against my NSIS skills and NSIS capabilities. Comments will appear in bold red.

(10-01-2010, 05:27 PM)divVerent Wrote: Generally, I'd prefer to ONLY package the zip archive for all platforms. However, a small NSIS installer that downloads the zip, why not. If it also can put a launcher in front of Xonotic that checks for a newer release, and can upgrade, even better. But just a huge exe NSIS installer is not really worth much.

So, the ideal Xonotic installer:
- is about 1MB in size, or less Check.
- downloads Xonotic engine and data, extracts and installs it I think there is a Zip plugin for NSIS out there.
- is independent from Xonotic version (always downloads and installs the current one) If the file on the server is always going to be the same name (eg. xonotic.zip or maybe even download-newest.php), that's doable.
- provides uninstaller that also asks whether or not to keep game settings Blender's setup does this when uninstalling, so check.
- allows updating by simply running a newer installer, retains old settings If the installer is version-independent, the core download-and-install code will be retained, thus the new installer versions will be essentially the same. So, check.
- puts a launcher in front of Xonotic startup to check for updates Also NSIS - PortableApps does this, and the check-and-update code should be easy.
- provides a .pk3 shell extension (and possibly even .pk3 manager where you can easily remove them, or "install" pk3s from dlcache) Unfortunately, I don't know either NSIS way or Windows native C/C++, so I might want to do this one in either Silverlight or .NET forms.
__________________________________________________

It's true that a huge installation file is kind of not worth is. Personally, I hate when installers take more than 30 Mb, and I like the way DirectX is installed. Of course, all of this can be done in NSIS (except for the pk3 manager). However, there should be a way to prevent the core pk3's from being modified by the manager - that's why I'd like you to keep the xonotic- prefix before core pk3's and pk3dir's. The program will be then set to omit or grey out packs with prefixes like "xonotic-" and "font-".

First version of my installer will consist of the following:

1. Installation bootstrapper (the file you download)
- Will connect to the http download link and download the zip
- Will unpack the zip to specified folder
- Will extract some installer-related files.
- Will create shortcuts
2. Game bootstrapper (the play-xonotic.exe file)
- Will read the /RMODE:x parameter for wgl/sdl
- Will try to connect to the http download link and check versioninfo.txt file to determine if there is a new version
- - If yes, will unpack and run a copy of the installer with /RETAINSETTINGS:true switch.
- - If no, will run the game with selected render mode.
3. Uninstaller
- Will ask if you want to retain settings
- Will simply delete the folder everything was installed in, as it does not know what's really in it.

Future versions will also include:

4. Patcher with settings
- A small, NSIS-based program which has two options.
- SETTINGS option:
- - Will display settings dialogue which will enable user to decide if the program should check for updates on game startup.
- - Will enable user to decide if to install a Windows Schedule task for checking updates to the game.
- UPDATE
- - Will check for updates, and install them when available.

5. PK3 Manager
- A small, non-NSIS program which will help users to install and manage their maps and models.
- Optional during installation


RE: Xonotic Installer - I'll make. - nilyt - 10-03-2010

Maybe check out 0install ?

http://zero-install.sourceforge.net/


RE: Xonotic Installer - I'll make. - nowego4 - 10-03-2010

A much simpler solution to the "how do I get a pk3 to work?" question would be a pdf that says:
1. Download
2. Drag and drop into the Xonotic > Data directory
3. Open Xonotic and go to the create tab

Smile


RE: Xonotic Installer - I'll make. - PinkRobot - 10-04-2010

[Image: 9glkc38bquv6juju0cok_thumb.png]

Needs a lot more usefulness and slightly more bling, but this is what I made this evening.


RE: Xonotic Installer - I'll make. - Minkovsky - 10-05-2010

Hmm... Looks interesting. But this needs few other buttons:
- Add directory to dlcache
- Check integrity (for pk3s with md5s)
- Add pk3s from outside dlcache dirs
- UAC compatible (if Xonotic is in Program Files, arrows should have the UAC shield on them)
- Virus check - executes system's default AV engine to check for viruses (for people who use IE)
- Help - obvious.


RE: Xonotic Installer - I'll make. - PinkRobot - 10-05-2010

Does this screenshot mean you are working on a program for this yourself now? In that case I will cease my attempts.


RE: Xonotic Installer - I'll make. - rainerzufalldererste - 10-06-2010

it would be cool to have the map screenshots for the files when viewing them in explorer!
(isn't that a shell extension?)


RE: Xonotic Installer - I'll make. - Minkovsky - 10-06-2010

yes, that's a shell extension's description. In any case, since pk3 is a zip, it would be easy. A subroutine will look for a mapshot, and when there is one, display it as a thumbnail. Also, I'd like to see how Windows 6.0+ (That's Vista and above) generates these skinned thumbnails, so I could make one.

@PinkRobot, if you are developing it as a native C/C++, it would be nice if you keep working, since I don't know C++ for crap. I can C#, though, but I doubt if C# is any good for non-.NET programming.

Anyway, this is just a main window, which will be accessed by a start menu shortcut. Most of the action will be done by a shell extension which will have two options: Just copy to the game, or, if you activate the "InstaPlay" option, it will automatically copy the pk3, and if it's a map, it will call xonotic with the map as an argument (and if xonotic is made like that, it will start a new game with the map you double-clicked on).

Also, I'd like to ask the developers for the original Xonotic menu controls graphics, since I'd like to re-do the main window in WPF using the Xonotic graphics (hey, if it's going to be the closest to official installer you could get, let's skin it, too).


RE: Xonotic Installer - I'll make. - PinkRobot - 10-07-2010

OK Minkovsky, I will continue with it, thanks for letting me know. It's indeed C++, I use Ultimate++ (http://www.ultimatepp.org). Which can do with a little plug, so there you go.


RE: Xonotic Installer - I'll make. - rainerzufalldererste - 10-08-2010

I could help you, too Wink but I'm busy @the moment (programming a 2D Game Engine with XNA and C#) Big Grin


RE: Xonotic Installer - I'll make. - aCROX999 - 10-08-2010

Hehe, I'm one of the bad guys here. I vote for NO. Ahah, even me found it kinda annoying to build it yourself, but I just keep on doing it, reading the docs, without asking stupid questions.

No mercy for you, Windows-users! >Big Grin

P.s. I'm a Windows user too, but I'm more into Linux now.


RE: Xonotic Installer - I'll make. - Mr. Bougo - 10-09-2010

Um, you won't have to build it yourself once it's actually released, hey.


RE: Xonotic Installer - I'll make. - rainerzufalldererste - 10-09-2010

(10-08-2010, 10:01 AM)aCROX999 Wrote: >Big Grin

FAIL Tongue Wink


RE: Xonotic Installer - I'll make. - aCROX999 - 10-09-2010

(10-09-2010, 02:41 AM)Mr. Bougo Wrote: Um, you won't have to build it yourself once it's actually released, hey.

Oh yeah. You're right, but still, Learning Is Fun. Tongue

(10-09-2010, 05:24 AM)rainerzufalldererste Wrote:
(10-08-2010, 10:01 AM)aCROX999 Wrote: >Big Grin

FAIL Tongue Wink

Yeah, I've been pwned twice in this thread.


RE: Xonotic Installer - I'll make. - The mysterious Mr. 4m - 10-11-2010

There might be an alternative to the installer; package managers for Windows.


RE: Xonotic Installer - I'll make. - -z- - 11-28-2010

An additional benefit to a windows installer is the ability to setup the xonotic:// protocol so they can click from their web-browser or another application to open xonotic and play on the specified server. There is also one built available at the bottom of the page here: http://nexuiz.shaztronics.com/