Custom Spring installer and Spring Module Updater

Custom Spring installer and Spring Module Updater

Discuss game development here, from a distinct game project to an accessible third-party mutator, down to the interaction and design of individual units if you like.

Moderator: Moderators

User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Custom Spring installer and Spring Module Updater

Post by Forboding Angel »

Ok well as I promised, here is a ready to go installer that any modder here can use.

The only requirements are that you need to have Clickteam Install Creator Freeware installed.

When you download the ZIP file, you HAVE to unzip it to c:\, so your final resting place should be c:\springinstaller. If you change any of this the install file won't know where any of the files are and will lose all the settings I've associated with them.

In the docs folder you will find "install.itt", just load this file in install creator and you're set to go. It is currently set up as a Generic Spring Engine installer. If you want to do custom branding, you'll need to go through the files and change the name of the start menu item (It's really easy) to the name of your custom installer (so in other words if you are BA, you'll want to put the start menu folder as Balanced Annihilation). Additionally, you need to flip over to the "Wizard Texts" tab and change the title name.

Personally I recommend that you don't custom brand your installer. Why? Well that's what I'm getting to.

A few days ago I made a Spring Module Updater. The purpose of this updater is to allow users to choose which spring mod they would like to install. When they make a selection it is downloaded to their my games/spring/mods folder. The updater settings can be changed dynamically by me or anyone else with access, without needing for the user to do anything. A updaterdef file is downloaded from springinfo upon the module updater start. This file contains the menu and download locations.

By default, Spring Module Updater is included in the installer. You can edit this file to your liking (assuming you have a firm grasp on how to use notepad), or you can leave it as is (My recommendation) and allow the user access to all the spring games and mods.

Using the module updater, when updates for a mod come out, it is not necessary to update the installer, because all it takes is a simple update to the updaterdefs file on springinfo. Piece of cake!

If you do not wish to use the module updater, you can simply look for the subdirectory "modupdater" and delete the files form the list.

The module updater will not download a file if that file exists in my games/spring/mods and there is no newer version on the server. Additionally, if you have dependencies, the updaterdefs file is easy to modify to that end.

Now...

I propose a new system for distributing mod files!

In a central location. Namely, http://springinfo.info/moddownloads (or http://moddownloads.springinfo.info if you prefer). Unifying the location like this can only yield positive results and less confusion for end users, and with the module updater, the user has immediate access to all the spring mods. The user can either download them via the modupdater or simply go to http://moddownloads.springinfo.info and download the sd7 or sdz file he wishes. I don't think it could be a whole lot easier honestly.

The module updater is a way for those of us without updaters to handle our updates without having to make a user manually download the file (and pray to god that windows doesn't rename the sdz) and figure out where to put it.

I've worked very long and hard to try to make this as good as I can manage, and I think I've accomplished my goal nicely. I spent a night of testing tonight, only giving out the link to the moduleupdater and then asked those who joined the game what they thought of it. The response was overwhelmingly positive, with 1 comment on the simplicity of it (looks wise), but that same user also really liked it regardless.

What I would like to do is give all the modders with released mods ftp access to the folder containing the mods. This also gives access to the updaterdef, so a modder can update it if he makes a new release, or he can ask me to do it and I'll take care of it. You like collaboration? Well this is it! :-)

Please before doing anything with this zip file containing all the spring install information, download this file and install it: http://springinfo.info/moddownloads/Spr ... taller.exe (this is my generic themed installer for Evolution RTS)

Pay attention to how the start menu items are set up, etc. This installer will not interfere with your current spring install and does a 100% excellent job of cleaning up after itself, so install it, poke around and see how things are set up (so you have a clue of what is going on when making your own), then uninstall it and maek your own!

Raw installer Stuffs: http://springinfo.info/downloads/springinstaller.zip

The Spring Module Updater installer stuffs for making an independent module updater install is located in the modupdater folder. You will find a a file named "modupdaterInstall.itt". Simple load that up in install creator and you're all set!

If you would like to see the module updater in action, please download and install this: http://springinfo.info/moddownloads/Spr ... pdater.exe

Currently there are only 4 games contained within it (and I would like to add every single one I can get my hands on that is actively being worked on, so modders... PM ME!). Those games are BA, NOTA, EVORTS, and KP.

I really hope this generates some interest because it will help us all out quite a lot. If you would like your game/mod to be added, please pm me with a link to the latest version, which I will then put on the server and add to the menu in alphabetical order.

As I said, I've worked really hard on this, so please look things over, and lemmie know what you think. I'm sure it can be improved upon.

Speaking of improving, last I heard Lurker is working on an updater using rsync (and a nice GUI) which would be really cool but there is a bit of an issue because of the fact that TASClient has a hardon for locking modfiles.

Hope you guys like it! :-)

Edit: I forgot to mention, downloading mods via the updater are reaching speeds of 20mbps for me.
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7052
Joined: 16 Nov 2004, 13:08

Re: Custom Spring installer and Spring Module Updater

Post by zwzsg »

I wish you'd have used NSIS.
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: Custom Spring installer and Spring Module Updater

Post by Forboding Angel »

No thanks. I prefer something that normal human beings are capable of using.
Regret
Posts: 2086
Joined: 18 Aug 2007, 19:04

Re: Custom Spring installer and Spring Module Updater

Post by Regret »

Forboding Angel wrote:No thanks. I prefer something that normal human beings are capable of using.
http://en.wikipedia.org/wiki/Nullsoft_S ... t_use_NSIS
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7052
Joined: 16 Nov 2004, 13:08

Re: Custom Spring installer and Spring Module Updater

Post by zwzsg »

Since when is Spring "notable"?
imbaczek
Posts: 3629
Joined: 22 Aug 2006, 16:19

Re: Custom Spring installer and Spring Module Updater

Post by imbaczek »

hm, this looks interesting: http://installer.excelsior-usa.com/en/
User avatar
CarRepairer
Cursed Zero-K Developer
Posts: 3359
Joined: 07 Nov 2007, 21:48

Re: Custom Spring installer and Spring Module Updater

Post by CarRepairer »

zwzsg wrote:Since when is Spring "notable"?
/me notes Spring.

Yep, it works.
Satirik
Lobby Developer
Posts: 1688
Joined: 16 Mar 2007, 18:27

Re: Custom Spring installer and Spring Module Updater

Post by Satirik »

Forboding Angel wrote:The only requirements are that you need to have Clickteam Install Creator Freeware installed.
noob spoted !!! with a big ad page at the end !!! awesome !
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: Custom Spring installer and Spring Module Updater

Post by Forboding Angel »

I've updated all the files listed above to be able to use Clickteam Install Creator Freeware (This one is the easiest to use if you are a noob to installers) AND I have also updated it with pre-setup packages for Excelsior Installer (which can be exported to NSIS... Assuming that NSIS doesn't give you the shivers).

Thanks for every last one of you (except Baczek and carrepairer... Thanks Baczek btw for pointing me towards Excelsior) for being assholes. It's been ridiculously helpful.

I also updated the installers that I linked to previously to use Excelsior. Unfortunately Excelsior has some limitations of it's own (Clickteam install creator is quite feature rich), one of which is the fact that you can't change the graphics used in the installer (not that that is particularly important), nor does it understand %userprofile% (also not particularly important, but it is annoying).
User avatar
smoth
Posts: 22309
Joined: 13 Jan 2005, 00:46

Re: Custom Spring installer and Spring Module Updater

Post by smoth »

any way that this can work with other ftp dirs? I prefer to host my own files for fear of another UF fiasco.
User avatar
Caydr
Omnidouche
Posts: 7179
Joined: 16 Oct 2004, 19:40

Re: Custom Spring installer and Spring Module Updater

Post by Caydr »

Just to add my 2 cents: back in the day, I used to use Inno Setup a lot.

http://en.wikipedia.org/wiki/Inno_Setup

It's simple to understand and feature-rich, though not multi-platform IIRC... which I guess is probably a deal-breaker. On the other hand, can't linux people basically install things through sheer force of will anyway?
User avatar
SinbadEV
Posts: 6475
Joined: 02 May 2005, 03:56

Re: Custom Spring installer and Spring Module Updater

Post by SinbadEV »

Caydr wrote:On the other hand, can't linux people basically install things through sheer force of will anyway?
sadly those days are over... linux can now be used by just about anyone even moderately intelligent
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: Custom Spring installer and Spring Module Updater

Post by Forboding Angel »

smoth wrote:any way that this can work with other ftp dirs? I prefer to host my own files for fear of another UF fiasco.
Absolutely! The path can be pointed to any location that you like (assuming that location is the the location of the file itself)! The only thing that needs to be updated in the Module Updater is a single link (and changing the version number on the menu). You could even have the updater launch an installer if you really wanted to (I advise against it, but meh, whatever works I guess).

The whole thing is very flexible. As you know (or at least you should know...) my sites and hosting isn't going away anytime soon.

Regarding Caydr's comments, this is what I've don on my evo download page.
http://www.evolutionrts.info/wordpress/?page_id=16 wrote: Download

If you do not have the Spring Engine installed and are on Windows (XP/Vista/Win7), then you need this file: http://springinfo.info/moddownloads/Spr ... taller.exe

If you already have spring installed and are on Windows (XP/Vista/Win7), then you need this file: http://springinfo.info/moddownloads/Spr ... pdater.exe

If you do not have the Spring Engine installed and are on Linux, then you need to visit the setup guide here: http://springrts.com/wiki/SetupGuide

If you already have Spring installed and are on Linux, then you need to go here and download the raw gamefile and put it into your mods directory: http://download.evolutionrts.info

If you would like to get in on the absolute latest updates and live discussion concerning Evolution RTS When you are logged into the Multiplayer Lobby, simply type /join #evolution (no quotes). That will connect you to other players who enjoy playing Evolution RTS and can help you through learning the game.

Enjoy, and most of all, Have Fun!
Hopefully this answers everyone questions. If not, keep asking, we'll get this knocked out one way or another :-)
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Custom Spring installer and Spring Module Updater

Post by AF »

NSIS is straightforward, its jsut intimidating to use because it uses a script, though if your using any plugins I must admit those seem fiddly.

But its perfectly possible to write a generic NSIS script and simply tell the user to change 3 or 4 variables at the top of the file for their modname, and uncomment a line or two to add their files, and replace the bitmaps next to the script with their mod logos, and compile.
User avatar
koshi
Lobby Developer
Posts: 1059
Joined: 14 Aug 2007, 16:15

Re: Custom Spring installer and Spring Module Updater

Post by koshi »

like git://springlobby.info/git/koshi/installer.git which i've been using for s44 for months now, told various people about and no one showed any interest in? yeah, that's possible
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: Custom Spring installer and Spring Module Updater

Post by Forboding Angel »

NSIS is an extremely powerful creator. It's also the most user unfriendly piece of software I've seen in a long while (just download and install it, then look for a way to start the program.... that'll fuck you up good).

Mere mortals (such as myself) prefer something that we can work with, without spending a week learning how to use it first.
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Custom Spring installer and Spring Module Updater

Post by AF »

NSIS is not the same kind of setup.

Write NSIS script
Compile NSIS script
Use installer

There are tools which will automate the process, IDEs that help and can autogenerate scripts. A very basic NSIS installer isn't that hard to do.
User avatar
Forboding Angel
Evolution RTS Developer
Posts: 14673
Joined: 17 Nov 2005, 02:43

Re: Custom Spring installer and Spring Module Updater

Post by Forboding Angel »

Hmm, I prefer:

Open Gui
Change settings around
Click build/create button

^^ Much more user friendly.

I already updated it with Excelsior builds which can be directly exported to NSIS, so what's all the bellyaching about?
User avatar
SpliFF
Posts: 1224
Joined: 28 Jul 2008, 06:51

Re: Custom Spring installer and Spring Module Updater

Post by SpliFF »

Don't get too steamed up about reactions FA

I wrote an Inno Setup script for Dawn of War and Supreme Commander mods that was so well scripted you only needed to update 4 files (a text readme, an optional icon and wizard image, an optional music file (midi), and the mod config). The mod config was 4 lines specifying your mod name and version). The resulting installer looked exactly like a professional Install Shield installer, found the game directories for the user and was compatible and tested on all versions of windows. It took more than 50 hours to perfect before I announced it.

Image

Did anyone get excited? no. Use it? nope.

I think installers just don't make the same kind of impact as mods and other tools.

I could adapt it to Spring very easily (just a matter of updating the game paths) but I haven't bothered due to expected lack of interest. If anyone does get interested you'll find it at http://warriorhut.com/forged_alliance/t ... installer/
User avatar
zwzsg
Kernel Panic Co-Developer
Posts: 7052
Joined: 16 Nov 2004, 13:08

Re: Custom Spring installer and Spring Module Updater

Post by zwzsg »

Just tried Forb's installer:
  • Do NOT install in C:\Program Files\, I heard it causes issue in Vista.
  • I clicked [Install] the first time. That installed no mod, no desktop shorcut, and of three Start Menu shortcut, none to actually go play the game.
  • SpringLobby is really not at all the best newb friendly way to get your game started. Not entirely your fault since few games have an easy frontend.
  • The dos windows that opens up at the end is scary. Even though I know it's not a virus but just your updater thing, I can't help but close it.
  • The second time I didn't click install but next,next, next, and realising it had no asked for mod, I let Spring Updater run this time. But by then my internet connection had died. Put all the files in the installer, realising in mid-installation you need an internet connection to download the rest is annoying. Don't download them by what looked like an optional thing after Installation is Finished. But at least the updater patiently waited for my connection to come back instead of crashing with ominous message, kudos for that. Still choosing and installing mods through a dos bat file doesn't really convey the idea of intalling the best RTS ever.
  • So maps go into:
    C:\Program Files\Spring Engine\maps\
    But mods go into
    C:\Documents and Settings\LoginName\My Documents\My Games\Spring\mods\
    Be consistent!
  • Also, by:
    C:\Documents and Settings\LoginName\My Documents\My Games\Spring\mods\
    I believe you mean:
    C:\Documents and Settings\LoginName\Mes documents\Spring\mods
    Yes, not everybody is American.
  • Add the Cursed to the mod list, please, it's way better than NOTA or XTA.
Post Reply

Return to “Game Development”