HOWTO: Code contribution

Post Reply
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

HOWTO: Code contribution

Post by pheonixstorm »

With the new server, we have new capabilities.

If you write any code to contribe to the game you will need to post it to our Review Board. The process is fairly simple, though it does require a few steps. you can read up on it HERE

You will first need to sign up for an account. Please use your forum name. I do not at this time know how, or if there is a way, to integrate the review board with the forum user database.

Once you are signed up and have something to post, click "New Review Request". The request page will open up with a few input variables.
1. Repository: Default is Vega Strike, and will probably be the one most used. Currently we only have repositories setup for my Dev Tools (VS Dev Tools) and Vega Strike.
2. Base Directory: this is the tricky one. If you have svn commit access you will be using either /branches/yourbranch or /trunk to start. The base directory will be the directory that you pulled your diff from. Example

Code: Select all

Index: src/main.cpp
===================================================================
--- src/main.cpp	(revision 13197)
+++ src/main.cpp	(working copy)
@@ -821,6 +821,7 @@
                     exit( 1 );
                 }
                 cout<<"Using data dir specified on command line : "<<datatmp<<endl;
+                break;
             case 'r':
             case 'R':
                 break;
@@ -897,6 +898,7 @@
                     g_game.vsdebug = lpCmdLine[i][8] - '0';
                     ++i;
                 }
+                break;
             }
         } else {
             //no "-" before it - it's the mission name
For this diff the base directory would be /trunk/vegastrike not /trunk/vegastrike/src (more preicsely, if you need the full path, https://vegastrike.svn.sourceforge.net/ ... vegastrike)
3. Diff: simple, just find the diff file on your computer to upload.

Click "Create Review Request" to go to the next section.

You will need to fill out the summary, reviewer (group or person), description, and testing done sections before clicking on publish.

Once this is done just sit back and wait for people to pick your code changes apart, apply changes if needed, then when everyone is happy watch your code go into svn.

Doesn't sound too hard now does it.
Last edited by pyramid on Sun Mar 01, 2020 12:49 pm, edited 2 times in total.
Reason: klauss: specified full base path for diffs
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
shenle
Confed Special Operative
Confed Special Operative
Posts: 381
Joined: Thu Jan 31, 2008 3:25 am
Location: hiding in a dark corner

Re: HOWTO: Code contribution

Post by shenle »

testing... testing... :)
http://dev.vega-strike.org/r/7/
make me a sandwich
make: *** No rule to make target 'me'. Stop.
pjs
Star Pilot
Star Pilot
Posts: 4
Joined: Sat Mar 17, 2012 9:59 am

Re: HOWTO: Code contribution

Post by pjs »

Great project here, guys! I've been looking for something like this for ages. I've just started playing with it, and got bogged down with the keyboard controls.

So, I have created a 1-page keyboard quick reference card for Vega Strike, which I've exported to PDF and would like to share it. How do I upload it to the forum?
Gungnir
Mercenary
Mercenary
Posts: 98
Joined: Thu May 06, 2010 5:57 am

Re: HOWTO: Code contribution

Post by Gungnir »

pjs wrote:So, I have created a 1-page keyboard quick reference card for Vega Strike, which I've exported to PDF and would like to share it. How do I upload it to the forum?
Well, you could add it as an attachment on a post; not sure about the attachment rules here, so that might not work. Alternatively, you could just upload it to Mediafire or something and post the download link.

Also, thanks for the contribution and welcome to the forums!
~Gungnir
segfault wrote:if I was actually in space I'd totally be throwing on autopilot and relaxing in the back during the trip, sipping space wine and listening (rlaan?) jazz.
Rig: i5 2500k @ 5ghz, 2x OCZ Agility 3 120gb SSD boot drives, AMD Radeon HD 7950 @ 1100/1575 (Catalyst 12.1 Linux and 12.3 Windows), dual-boot Fedora 16 KDE and Windows 7 Pro
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: HOWTO: Code contribution

Post by loki1950 »

And there is the in game reference just hit the Esc key :wink: it has transparency so you don't run into anything.

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
pjs
Star Pilot
Star Pilot
Posts: 4
Joined: Sat Mar 17, 2012 9:59 am

Re: HOWTO: Code contribution

Post by pjs »

Gungnir wrote:Well, you could add it as an attachment on a post; not sure about the attachment rules here, so that might not work...
I was about to say "I don't see any way of attaching anything to the post", but then saw the tab, carefully hidden in plain site right under my nose. Last place I would have looked for it! I'll try to upload it this evening when I get home, and failing that, I'll put it in DropBox and give you guys the link.
loki1950 wrote:And there is the in game reference just hit the Esc key :wink: it has transparency so you don't run into anything.
This doesn't seem to be there in 0.5.0. I spent this weekend trying to get the new beta working on my machine, but ran into problems with the MVC redistributable. I see there is already a post about that one, so I'll try what was suggested this evening.

Once I've played around with that a bit, I look forward to offering more of my time. I am a developer, although not really on the gaming side, so my time is probably going to be better spent on documentation.
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: HOWTO: Code contribution

Post by loki1950 »

Did not know which version you run since I have always run the svn version so we can get new features tested before we roll out a new stable release.

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
maze
Hunter
Hunter
Posts: 94
Joined: Tue Oct 30, 2012 10:39 pm

Re: HOWTO: Code contribution

Post by maze »

pheonixstorm wrote:For this diff the base directory would be /trunk/vegastrike
Actually, the base directory would be:

Code: Select all

https://vegastrike.svn.sourceforge.net/svnroot/vegastrike/trunk/vegastrike
rather than the above.

Otherwise it does not let you proceed. Took me a while to figure this out, so I thought I'd share.
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Re: HOWTO: Code contribution

Post by klauss »

Ah yes, we always specify paths without the "root path" (up to the first vegastrike) since that's standard SVN lingo. But thanks for the clarification. I'll update the OP.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: HOWTO: Code contribution

Post by pheonixstorm »

It worked the way I posted it before the crash... :( wonder what changed??
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: HOWTO: Code contribution

Post by loki1950 »

Bit rot :!:

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Re: HOWTO: Code contribution

Post by klauss »

I've been reading (for work) about ZMQ, and something totally unrelated but interesting popped up.

The C4. A set of OSS collaboration rules that have worked for ZMQ. It's explained in Ze-guide for ZMQ, which looks totally unrelated to ZMQ itself, but is interesting.

I'm wondering if we should adopt it, formally. Lots of what it says we've been slowly adopting, only informally. Like requiring tracker issues be opened for bugs, instead of merely saying "doesn't work" on the forums.

Edit: Incidentally... I believe we should rewrite the multiplayer network protocol to use ZMQ. It's a great excuse to adopt it, and it would help in the long run, it we were able to use ZMQ itself to communicate an internal server thread running physics separately of everything else. Just saying. It might be a cool project for someone with abundant free time.
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
nido
Merchant
Merchant
Posts: 43
Joined: Tue Sep 03, 2013 2:35 pm

Re: HOWTO: Code contribution

Post by nido »

I tried to post to the review board, but it seem to have a problem with my patch formatting. Please advice with the correct arguments to the diff command. The command I used to create said patch is: diff -uNr ../vegastrike-old/ .
(note, this is the vegastrike directory which contains the src/ link; vegastrike-old is a copy of that directory before i made changes.

The patch itself fixed a few warnings given by GCC which were relatively trivial to remedy (hence i decided to do so). There are still a few warnings left after applying this patch (patch location: http://pastebin.com/iaU3SwcU ), one regarding a description string that isn't used anywhere (it has comments pointing this out, I guess someone is working on this: DEF_OPTIMIZER( Description ); // What was this supposed to describe?), and one regarding an unused variable named 'eqg' in objconv/mesher/to_OgreMesh.cpp, which I think should be added to be logic two lines down.
klauss
Elite
Elite
Posts: 7243
Joined: Mon Apr 18, 2005 2:40 pm
Location: LS87, Buenos Aires, República Argentina

Re: HOWTO: Code contribution

Post by klauss »

nido wrote:I tried to post to the review board, but it seem to have a problem with my patch formatting. Please advice with the correct arguments to the diff command. The command I used to create said patch is: diff -uNr ../vegastrike-old/ .
(note, this is the vegastrike directory which contains the src/ link; vegastrike-old is a copy of that directory before i made changes.
The best way to build a patch would be against SVN HEAD, you'd check out SVN, do your modifications, and then issue a plain "svn diff > yourpatch.patch"

Since you already did it the diff way, you could post it on the patch tracker instead of review board (it would take some effort to make review board accept your patch, not worth it).
nido wrote:The patch itself fixed a few warnings given by GCC which were relatively trivial to remedy (hence i decided to do so). There are still a few warnings left after applying this patch (patch location: http://pastebin.com/iaU3SwcU ), one regarding a description string that isn't used anywhere (it has comments pointing this out, I guess someone is working on this: DEF_OPTIMIZER( Description ); // What was this supposed to describe?), and one regarding an unused variable named 'eqg' in objconv/mesher/to_OgreMesh.cpp, which I think should be added to be logic two lines down.
Both things are of my authoring, but I really forgot those details. I'll have to see the patch and think hard ;)
Oíd mortales, el grito sagrado...
Call me "Menes, lord of Cats"
Wing Commander Universe
gonzo
Bounty Hunter
Bounty Hunter
Posts: 207
Joined: Wed Oct 20, 2010 3:50 pm
Location: Kungälv, Sweden
Contact:

Re: HOWTO: Code contribution

Post by gonzo »

If I remember corectly you need to zip (compress) things that the board won't accept as attachment and then it'll be all groovy
There are 10 types of people in this world, those who understand binary and those who don't.
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: HOWTO: Code contribution

Post by loki1950 »

Smell the coffee gonzo there already is a in game key map :wink: the guy was a spammer :shock:

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
gonzo
Bounty Hunter
Bounty Hunter
Posts: 207
Joined: Wed Oct 20, 2010 3:50 pm
Location: Kungälv, Sweden
Contact:

Re: HOWTO: Code contribution

Post by gonzo »

It's not every day a spammer gets me. :D
Coffee next!
There are 10 types of people in this world, those who understand binary and those who don't.
nido
Merchant
Merchant
Posts: 43
Joined: Tue Sep 03, 2013 2:35 pm

Re: HOWTO: Code contribution

Post by nido »

The review board seems to be Forbidden now.
gonzo
Bounty Hunter
Bounty Hunter
Posts: 207
Joined: Wed Oct 20, 2010 3:50 pm
Location: Kungälv, Sweden
Contact:

Re: HOWTO: Code contribution

Post by gonzo »

Yeah, this project needs a bit of a paintjob. :wink:
I was a bit surprised to see that there has been 540 downloads last week on sourceforge so there is some interest still.
I think, and I've mentioned it elsewhere, that a move to git and github would be a good move and would make attracting developers easier.
There are 10 types of people in this world, those who understand binary and those who don't.
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: HOWTO: Code contribution

Post by loki1950 »

A bit more that a paint job I think ;) but a migration to git is definitely needed I just don't have the access or authority on my own. Any ideas :?:

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
gonzo
Bounty Hunter
Bounty Hunter
Posts: 207
Joined: Wed Oct 20, 2010 3:50 pm
Location: Kungälv, Sweden
Contact:

Re: HOWTO: Code contribution

Post by gonzo »

loki1950 wrote: Any ideas :?:
Yes! I'm using the github importer right now to import and convert vegastrike to github/git. It's doing it one commit at a time so I'll try it and report back tomorrow.
There are 10 types of people in this world, those who understand binary and those who don't.
gonzo
Bounty Hunter
Bounty Hunter
Posts: 207
Joined: Wed Oct 20, 2010 3:50 pm
Location: Kungälv, Sweden
Contact:

Re: HOWTO: Code contribution

Post by gonzo »

There are 10 types of people in this world, those who understand binary and those who don't.
gonzo
Bounty Hunter
Bounty Hunter
Posts: 207
Joined: Wed Oct 20, 2010 3:50 pm
Location: Kungälv, Sweden
Contact:

Re: HOWTO: Code contribution

Post by gonzo »

I started a separate topic for GitHub here.
There are 10 types of people in this world, those who understand binary and those who don't.
loki1950
The Shepherd
Posts: 5841
Joined: Fri May 13, 2005 8:37 pm
Location: Ottawa
Contact:

Re: HOWTO: Code contribution

Post by loki1950 »

Thx gonzo :D

Enjoy the Choice :)
my box::HP Envy i5-6400 @2Q70GHzx4 8 Gb ram/1 Tb(Win10 64)/3 Tb Mint 19.2/GTX745 4Gb acer S243HL K222HQL
Q8200/Asus P5QDLX/8 Gb ram/WD 2Tb 2-500 G HD/GF GT640 2Gb Mint 17.3 64 bit Win 10 32 bit acer and Lenovo ideapad 320-15ARB Win 10/Mint 19.2
pheonixstorm
Elite
Elite
Posts: 1567
Joined: Tue Jan 26, 2010 2:03 am

Re: HOWTO: Code contribution

Post by pheonixstorm »

nido wrote:The review board seems to be Forbidden now.
I don't remember what access rights I have, but I don't think it was enough to get some projects fully working. It worked for awhile but it was complicated to setup and requires a fair amount of access.
Because of YOU Arbiter, MY kids? can't get enough gas. OR NIPPLE! How does that mkae you feeeel? ~ Halo
Post Reply