Xonotic Forums
Beginner Looking to Contribute Guidance Appreciated - Printable Version

+- Xonotic Forums (https://forums.xonotic.org)
+-- Forum: Community (https://forums.xonotic.org/forumdisplay.php?fid=6)
+--- Forum: Oh Hey, I'm new, I'd like to Introduce myself (ohiniltim) (https://forums.xonotic.org/forumdisplay.php?fid=28)
+--- Thread: Beginner Looking to Contribute Guidance Appreciated (/showthread.php?tid=7957)



Beginner Looking to Contribute Guidance Appreciated - militarybeetle - 01-27-2019

Hey all,
I'm in a university class where the goal is to contribute to an open source project. I'm looking at several projects right now and this one seems really cool!
I'll be doing some more lurking to try to figure out a good place that I can contribute. 

The class is only 13 weeks so I'd like to contribute somewhere where its easier to break in and see results so to speak.

I have coding experience in Java and some graphics editing experience.

Anything that you can do to help me put me on the right way is appreciated!


RE: Beginner Looking to Contribute Guidance Appreciated - Antibody - 01-28-2019

On the main menu of the website there's a contribute link. Check that out and view the underlying code changes to see if anything sparks your interest. I will say that there is almost no Java code in the project beyond NexuizDemoRecorder. One thing that you could do is simply rename all of the packages in there for Xonotic.


RE: Beginner Looking to Contribute Guidance Appreciated - martin-t - 01-28-2019

FWIW i don't think renaming Nexuiz stuff to Xonotic is the most worthwhile contribution. At best it's diff noise, at worst it breaks hardcoded paths in people's scripts/aliases and internet links.

If you wanna work on game logic, it's in the data repo. It's written in QuakeC which is mostly a subset of C-like langs (like Java). The repo has plenty of issues, but you'll have to search for beginner friendly ones. If things were easy, we'd have done them already Wink

The engine is in C, we're gonna move to the daemon engine which is in C++, i wouldn't recommend either of them if you only know java. Memory unsafe langs can be nasty.

A final warning: if you need your changes to get merged into master to get credit for them in your class, they'll need to get through code review and depending on how busy we are (and how much we care about the change) it can take a while.


RE: Beginner Looking to Contribute Guidance Appreciated - militarybeetle - 01-28-2019

Yea I checked out your repository and saw it was mostly C and C++ code? But I'll figure something out. Thanks for the tip Smile

@martin-t

Showing that I at least tried is the biggest part. I know some repos tag stuff as "first-timers-only" to reserve easy issues for beginners, do you guys do anything similar?


RE: Beginner Looking to Contribute Guidance Appreciated - Antibody - 01-28-2019

@martin-t: understood, and mostly agreed. I only suggested that b/c it is Java and it is a long-standing annoyance of mine.


RE: Beginner Looking to Contribute Guidance Appreciated - Freddy - 01-28-2019

Only few issues are actually labeled.
Quickly looking through the open issues, I found these that seem to be easy:


https://gitlab.com/xonotic/xonotic-data.pk3dir/issues/2164
https://gitlab.com/xonotic/xonotic-data.pk3dir/issues/2111
https://gitlab.com/xonotic/xonotic-data.pk3dir/issues/2113
https://gitlab.com/xonotic/xonotic-data.pk3dir/issues/1898

There are also some projects that were created by members of the community and that have some issues.
https://gitlab.com/xonotic-zykure/multibot/issues/1 would be one of those, if you know about network/async programming.

Except for the Demo recorder, I don't know of any xonotic related project that uses Java.