Create an account


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
What was easy for you in development? (Darkplaces and QuakeC programming)

#1
Hello, everyone, 
I was looking the code and I was developing something to learn but I remained stagnant since I saw that there were things that I couldn't understand well. I know that I should know the C programming language well, but there is no problem with this. I know how the logical structure works and I'm not saying it as a novice, none of this.

Apart from this, I wanted to know some experiences from the developers, I understand that the experiences of others can't be used for someone who doesn't know and for experts, but perhaps there is something that can take some step.

I wonder if someone liked modifying the codes of weapons, player, HUD, ... Same for engine devs, if they liked modifying some resources from the engine...

Here is the question for the developers:

What did you consider easy to develop in Xonotic?
Reply

#2
Hey, I'm not a Xonotic dev but I used to contribute to similar projects, I can at least share my experience from these. It's never easy to hop into a new project of this scale, you need to set up a comfy dev environment and mainly get an understanding of the whole architecture of the game, not just the language it's written in. If you have experience with other projects, it will be easier, but it always takes some time and effort.

The key thing is to see the big picture, know the big parts of the game, how they communicate and where they are located. This I always learn by starting to fix very simple bugs -- open the bug tracker, find something that looks simple and try to fix it, potentially ask for advice, and when you have something, even incomplete, don't be afraid to open a pull/merge request in which devs will review your work and tell you how to polish and finish your contribution.

To look for specific functionality in unknown codebase I simply use grep, something like this:

grep --color=always -Irnw render ./darkplaces

It's simple and effective. Doxygen can also be useful for generating automatic documentation that helps to search for stuff.
Reply

#3
(08-04-2020, 10:32 AM)drummyfish Wrote: Hey, I'm not a Xonotic dev but I used to contribute to similar projects, I can at least share my experience from these. It's never easy to hop into a new project of this scale, you need to set up a comfy dev environment and mainly get an understanding of the whole architecture of the game, not just the language it's written in. If you have experience with other projects, it will be easier, but it always takes some time and effort.

The key thing is to see the big picture, know the big parts of the game, how they communicate and where they are located. This I always learn by starting to fix very simple bugs -- open the bug tracker, find something that looks simple and try to fix it, potentially ask for advice, and when you have something, even incomplete, don't be afraid to open a pull/merge request in which devs will review your work and tell you how to polish and finish your contribution.

To look for specific functionality in unknown codebase I simply use grep, something like this:

grep --color=always -Irnw render ./darkplaces

It's simple and effective. Doxygen can also be useful for generating automatic documentation that helps to search for stuff.

Thanks, I understand that time and effort are valuable, also when we make or make mistakes and they correct us, we continue to learn. I know that the patience is important too.

I think it would also be cool if there was a visual scheme of the game code base and Darkplaces engine code base so we can see what it's like and look at the code interactions with code files included. 
I know that there is Doxygen, but it only documents parts of the code base even I'm not sure if the graphs are correct, as in the gitlab documentation warns us that the documentation of Doxygen can be incomplete. The graphs don't display the info of each code file content and where this code interacts in another code file.
Reply



Possibly Related Threads…
Thread Author Replies Views Last Post
  Xonotic vs Quake 3 development comparison LegendGuard 4 4,252 09-05-2023, 06:10 PM
Last Post: LegendGuard
  Xonotic 0.8.5/DarkPlaces "Issues" Baker 2 909 02-24-2023, 03:01 PM
Last Post: Baker
  [META] DarkPlaces fork Lyberta 24 14,581 02-21-2023, 07:12 PM
Last Post: ballerburg9005
  Samual's Personal Development Roadmap Samual 40 50,652 11-10-2021, 03:18 AM
Last Post: chooksta
  [TUTORIAL] How to create a command - DarkPlaces engine C programming LegendGuard 1 2,340 03-31-2021, 03:43 PM
Last Post: LegendGuard
  [TUTORIAL] How to create a command - Xonotic QuakeC programming LegendGuard 3 3,228 07-25-2020, 06:24 PM
Last Post: LegendGuard
  Moving away from QuakeC Lyberta 11 9,432 07-17-2020, 07:36 AM
Last Post: LegendGuard
  [NEED HELP] [Commission] To update Jeff's Modpack - QuakeC programmer wanted breakfast 4 4,803 07-08-2020, 12:45 PM
Last Post: breakfast
  Trying to understand darkplaces source code wiefie 22 15,543 09-22-2017, 08:28 AM
Last Post: wiefie
  New QuakeC virtual machine Lyberta 5 7,013 07-14-2017, 04:01 PM
Last Post: poVoq

Forum Jump:


Users browsing this thread:
1 Guest(s)

Forum software by © MyBB original theme © iAndrew 2016, remixed by -z-