Duke4.net Forums: Proposal: Replacing HRP zip downloads with SVN checkout script - Duke4.net Forums

Jump to content

  • 2 Pages +
  • 1
  • 2
  • You cannot start a new topic
  • You cannot reply to this topic

Proposal: Replacing HRP zip downloads with SVN checkout script

Poll: HRP Download Method (27 member(s) have cast votes)

How should users download the HRP?

  1. Link to a zip file, update only for major versions (current method) (12 votes [44.44%] - View)

    Percentage of vote: 44.44%

  2. Link to an intermediate program or script to check out the Subversion Repository, update for all revisions (15 votes [55.56%] - View)

    Percentage of vote: 55.56%

Vote Guests cannot vote

User is offline   NightFright 

  • The Truth is in here

#31

When I have time later this week, I'll try to get LeoD's Polymost stuff onto the HRP site, probably next to the HRP4 entries (it's getting pretty crowded there, maybe we should split up the download section into separate Polymost and Polymer links).

*EDIT*
Actually, I have just added the Polymost links. Why wait any longer? ^^

This post has been edited by NightFright: 31 January 2012 - 02:33 AM

0

User is offline   Hendricks266 

  • Weaponized Autism

  #32

View PostNightFright, on 31 January 2012 - 01:39 AM, said:

maybe we should split up the download section into separate Polymost and Polymer links

It's probably not a good idea to do that. If (and I mean "if"... /looks at other devs) the ifdef parameter is added there won't even be separate Polymost and Polymer links.

This post has been edited by Hendricks266: 31 January 2012 - 05:06 PM

0

User is offline   Sangman 

#33

I'm not sure if this discussion is still going on but forcing users to install svn (even if you have a bat file it wouldn't work if the user did not install SVN first, unless I'm missing something here) seems like a non-user friendly option. That doesn't necessarily mean that it's difficult, it's just really sloppy and should IMO not be necessary. Have you noticed how there's basically no software anywhere that forces end-users to install some kind of versioning system? Yeah.

What TX said in this thread many months back seems like the best option, a post-commit hook that puts up new files somewhere for users to simply download. Why not have a script that compares the data on the user's disk to new data on a server and then auto-update only the necessary files? Perhaps ironically, that is exactly how SVN and such work. :D My point is just the user should not be forced to install that kind of stuff, all that should be necessary is an internet connection. :D

This post has been edited by Sangman: 31 January 2012 - 05:54 PM

0

User is offline   Hendricks266 

  • Weaponized Autism

  #34

The script I link to in the OP contains a command-line SVN client which the batch file uses. The 7z is only 1.77 MB. You are correct, it exactly "compares the data on the user's disk to new data on a server and then auto-update[s] only the necessary files".

As I said a few posts above, the ideal solution is to have both a commit hook-generated zip available and my SVN script to cover all bases.
0

#35

Having just come to this thread, and realised it is nearly a year old, please understand I am necro posting in it as it nevertheless appears to be the "correct" thread for the subject. (Mods, please feel free to move this post if there's somewhere more appropriate).

For "house standards" reasons, I will not use an SVN folder for live work and prefer files for content over directories. This is why I hate Quake 1's resource loading system :P
Please could there be a script that generates a zip file for EVERY addon that uses an SVN?
For me the best way for playing is download, unzip, -g -h
I understand the need for the SVN, what with patched maps and so forth, but please, couldn't there be a version of each of the scripts, such as caribbean.bat, that generates a ZIP file instead of running the product? I am quite happy with specifying appropriate -h and -g myself.

EDIT:

Well I have tried it myself with some success. The following code is a bit rough and ready, but it works. It relies on another script that creates the patched maps, which is a relatively simple matter. Bascially I use the standard that foo.grp's main confile is foo.con, def file is foo.def, readme file is foo.txt, etc.

Thus in my local copy of VACATION.GRP all the files are packed into it, with GAME.CON renamed VACATION.CON, DEFS.CON renamed VACADEFS.CON and so on. Ideally I'd want foo+ to be a genuine addon that simply overrides content of foo. Thus my script below svn-exports vaca_plus and patches it so that vacation.con is the main confile instead of vacaeduke.con and packs vacation\ into vaca_plus.

The command line I use to run it is therefore:
eduke32.exe -gVACATION.grp -gvaca_plus.zip [-gvaca_hrp.zip] -xvacation.con -hvacation.def


if not exist OUT\VACA_PLUS_PATCHED_MAPS.ZIP call fixmaps.cmd cv
set fixedmaps=%cd%\OUT\VACA_PLUS_PATCHED_MAPS.zip
svn export ..\Hrpdata\vaca_plus Z_vaca_plus >nul
pushd Z_vaca_plus
move vacation vaca_plus
chdir vaca_plus
echo include EDuke.con>vacation.con.1
echo.>>vacation.con.1
rename vacation.con vacation.con.2
copy vacation.con.1+vacation.con.2 vacation.con
del vacation.con.1
del vacation.con.2
del vacaeduke.con
unzip %fixedmaps%
rmdir/s/q utils
choice /D Y /T 2 >nul 2>&1
rmdir/s/q linux_macosx
choice /D Y /T 2 >nul 2>&1
zip -0vr ..\vaca_plus.zip *.*  >nul
cd ..
cd vaca_hrp
zip -0vr ..\vaca_hrp.zip vaca_hrp  >nul
cd ..
move *.zip ..\OUT
popd



Oh by the way, the use of CHOICE as a delay is due to a breaking change in Win7 whereby rmdir returns before the disk is purged; they say it's performance, but who on earth forgot to disable it in command files? These, unlike programs, do not have access to completion callbacks and such. My old boss once referred to them as Micro-soft-in-the-head. It's easy to see why B)

This post has been edited by Martin Howe: 18 January 2013 - 09:36 AM

0

User is offline   Hendricks266 

  • Weaponized Autism

  #36

Your problem will likely have a solution in the future simply as things evolve. My intended solution would be proactive, changing the way things are done upstream, rather than reactive, modifying the batch file to make a zip for the user.

Whether it's Plagman or me, at some point a script will be written for the Duke4 server to generate a downloadable zip file after every SVN commit.

After I implement E32 Profiles, my add-on batch files will not be necessary to run every time you want to play the game. I'll keep them around for map patching and svn updating.

I do have plans to eliminate a separate installation step all together.

One other thing planned is to fix playing with Duke Plus. (Requires attention on the DP side of things--instead of me redoing the DP CON compatibility layer completely (lots of copypasting unfortunately) and repatching the maps to fix the sound conflicts caused by the SuperTrooper, I will investigate the best ways to easily change things like what projectile enemies shoot and to extend DP functionality to the monsters in a modular fashion without copypasting.)
0

Share this topic:


  • 2 Pages +
  • 1
  • 2
  • You cannot start a new topic
  • You cannot reply to this topic


All copyrights and trademarks not owned by Voidpoint, LLC are the sole property of their respective owners. Play Ion Fury! ;) © Voidpoint, LLC

Enter your sign in name and password


Sign in options