09-11-2013, 03:07 PM
(This post was last modified: 09-11-2013, 03:08 PM by MirceaKitsune.)
Now that summer is over, I'm hoping to spend more time with my favorite FOSS games including Xonotic. I run latest GIT, and took the time to check what's new after a few months. As expected, I didn't find many noticeable changes or anything interesting happening. Once again, this made me ask myself "Why does everything seem so dead? Have most of the developers left or lost their free time, or is there no more motivation on the project?". I feel there are a lot of things that could be better and more numerous... many of them easy to do, others already in front of us but unnoticed.
Although I've made threads like this in the past, I wanted to post my observations and opinions in detail about the things I consider need fixing in development. I'm not trying to say what should be done, but what I believe the primary issues are and the solutions I can think of... please correct or clarify me where I'm wrong. I'm hoping that Xonotic might spring back to life and become even better, if a few changes in decision can be made.
1 - Has programming focused only on minor works?
Issue: I'm getting the impression that coding has drifted too much into minor fixes and tweaks, and away from major features and improvements. Looking at the GIT logs of xonotic-data.pk3dir on "master", most commits are things that barely affect the player. Many are code optimizations and cleanups without effect, changes to cvar defaults, or address auxiliary systems such as mutators accuracy and translations. I'm not saying those aren't important too, just that focus seems to have fallen mostly on the smaller things. It's been long since something in GIT caused anyone to say "Wow, what an awesome new addition, so cool Xonotic finally got / changed this".
Example: There are many palpable changes that could be considered. Ragdolls are one thing I've militated for, and that's one of the less important features. The only interesting thing being worked on that I'm aware of are Samual's new weapons.
Solution: I think more of the coding power and energy should be directed to working on bigger and more noticeable features and improvements too. Small fixes are important, but IMHO they risk becoming a sleeping pillow.
2 - Delayed acceptance of contributions:
Issue: Several contributors propose changes, but it takes way too long for them to be accepted or rejected. In many cases, new changes in "master" cause GIT conflicts, which the creator of the code has to rebase on during the waiting period. This causes patches to make it in much later, but also discourages developers who fear they'll work for nothing. I previously asked the devs about this, and some said there's not enough time to check each contribution while others said the bug tracker is too full and difficult to clean up.
Example: This is the main reason why I haven't made code changes in months. If I do, they will likely wait for ages, during which changes in "master" will create GIT conflicts that I must constantly resolve. I also don't know whether the code will be rejected. I don't know if it's just me, but I assume other people have felt this way too.
Solution: I think this is something that could be easily solved with better organization. The core devs know the code well, and it likely doesn't take much to test a patch and conclude if it works well and should be bug free. It could also help to have code and feature guidelines, so programmers know more easily if they'd work on something that would be rejected.
3 - Ignored contributions:
Issue: This is mostly an art problem... such as music, player models, weapon models, maps. There is a lot of good and license-compatible content that we can use, including art made specifically for Xonotic. But in many cases, new art was discussed briefly then forgotten. For maps it's worst: The Autobuild BSP page is full of great finished maps, yet Xonotic only has a handful of in master.
Example: Some might remember the UBot player model. It's a beautiful and detailed robot created long ago by Oblivion for Nexuiz. However, no one rigged it and included it in Xonotic, and it died right after the model was finished. It would likely take me just a few hours to rig, but I know it's probably going to be ignored so I didn't bother. Currently the model can be found on its OpenGameArt page. Several gun models were also posted, such as a new Crylink UZI and Camping Rifle... but no news after years.
Solution: Xonotic already lacks a reasonable number of artists (excluding mappers). For this reason, I believe we need to use everything we can, not let art die off when it's offered to us. I suggest making a list of all contributions (especially sounds, music and 3D models) and thoroughly discussing inclusion.
4 - Lack of artistic diversity:
Issue: Xonotic lacks something that makes other projects great: Diversity in style and themes. Usually this means maps, weapons, player models, and other forms of art. Xonotic revolves around a limited type of environments, with not enough difference in player races and styles.
Example: Almost every map is a facility of metal. Stormkeep was the only one to break this limit, but later it too was given metal floors and frames. Other projects like Unreal Tournament however have a diversity of environments: Outdoor maps, medieval castles (made mostly of stone and wood), cities, even greenhouses full of plants. Player styles are also very limited: You only have humans, one alien race (Gak), and one class that can partly call itself a robot (Erebus, more like a cyborg though). To address this, I attempted making an alien model called Draconi, and insisted on the UBot several times... but again nothing happened.
Solution: I don't believe Xonotic will get further if the artistic monotony can't be addressed. We already have enough metal texture packs, so I think it would be a good idea to include stone / wood / city / etc. textures and direct mappers to use them, which would be a great start toward covering more types of environments. I also believe we should invest in more player models, as different as possible from existing ones and each other.
End.
I'd like to know what you think and which of those things you agree on. Again, I'm not in the position to say what's good or bad... I'm just posting my observations on what I believe is limiting Xonotic from advancing and reaching its true potential. Only thing I'm sure about is that more could be done with little or no extra effort, and maybe lack of organizing is causing things to slip past us.
If possible, I would gladly help with what I can: I'm somewhat decent at modeling in Blender, although zero when it comes to texturing. At the beginning of the Xonotic project, me and FruitieX were assigned as map coordinators, although no one's contacted me ever since to ask me what I think about a map; If the devs trust me with that, I could at least include new maps myself after asking enough people.
Although I've made threads like this in the past, I wanted to post my observations and opinions in detail about the things I consider need fixing in development. I'm not trying to say what should be done, but what I believe the primary issues are and the solutions I can think of... please correct or clarify me where I'm wrong. I'm hoping that Xonotic might spring back to life and become even better, if a few changes in decision can be made.
1 - Has programming focused only on minor works?
Issue: I'm getting the impression that coding has drifted too much into minor fixes and tweaks, and away from major features and improvements. Looking at the GIT logs of xonotic-data.pk3dir on "master", most commits are things that barely affect the player. Many are code optimizations and cleanups without effect, changes to cvar defaults, or address auxiliary systems such as mutators accuracy and translations. I'm not saying those aren't important too, just that focus seems to have fallen mostly on the smaller things. It's been long since something in GIT caused anyone to say "Wow, what an awesome new addition, so cool Xonotic finally got / changed this".
Example: There are many palpable changes that could be considered. Ragdolls are one thing I've militated for, and that's one of the less important features. The only interesting thing being worked on that I'm aware of are Samual's new weapons.
Solution: I think more of the coding power and energy should be directed to working on bigger and more noticeable features and improvements too. Small fixes are important, but IMHO they risk becoming a sleeping pillow.
2 - Delayed acceptance of contributions:
Issue: Several contributors propose changes, but it takes way too long for them to be accepted or rejected. In many cases, new changes in "master" cause GIT conflicts, which the creator of the code has to rebase on during the waiting period. This causes patches to make it in much later, but also discourages developers who fear they'll work for nothing. I previously asked the devs about this, and some said there's not enough time to check each contribution while others said the bug tracker is too full and difficult to clean up.
Example: This is the main reason why I haven't made code changes in months. If I do, they will likely wait for ages, during which changes in "master" will create GIT conflicts that I must constantly resolve. I also don't know whether the code will be rejected. I don't know if it's just me, but I assume other people have felt this way too.
Solution: I think this is something that could be easily solved with better organization. The core devs know the code well, and it likely doesn't take much to test a patch and conclude if it works well and should be bug free. It could also help to have code and feature guidelines, so programmers know more easily if they'd work on something that would be rejected.
3 - Ignored contributions:
Issue: This is mostly an art problem... such as music, player models, weapon models, maps. There is a lot of good and license-compatible content that we can use, including art made specifically for Xonotic. But in many cases, new art was discussed briefly then forgotten. For maps it's worst: The Autobuild BSP page is full of great finished maps, yet Xonotic only has a handful of in master.
Example: Some might remember the UBot player model. It's a beautiful and detailed robot created long ago by Oblivion for Nexuiz. However, no one rigged it and included it in Xonotic, and it died right after the model was finished. It would likely take me just a few hours to rig, but I know it's probably going to be ignored so I didn't bother. Currently the model can be found on its OpenGameArt page. Several gun models were also posted, such as a new Crylink UZI and Camping Rifle... but no news after years.
Solution: Xonotic already lacks a reasonable number of artists (excluding mappers). For this reason, I believe we need to use everything we can, not let art die off when it's offered to us. I suggest making a list of all contributions (especially sounds, music and 3D models) and thoroughly discussing inclusion.
4 - Lack of artistic diversity:
Issue: Xonotic lacks something that makes other projects great: Diversity in style and themes. Usually this means maps, weapons, player models, and other forms of art. Xonotic revolves around a limited type of environments, with not enough difference in player races and styles.
Example: Almost every map is a facility of metal. Stormkeep was the only one to break this limit, but later it too was given metal floors and frames. Other projects like Unreal Tournament however have a diversity of environments: Outdoor maps, medieval castles (made mostly of stone and wood), cities, even greenhouses full of plants. Player styles are also very limited: You only have humans, one alien race (Gak), and one class that can partly call itself a robot (Erebus, more like a cyborg though). To address this, I attempted making an alien model called Draconi, and insisted on the UBot several times... but again nothing happened.
Solution: I don't believe Xonotic will get further if the artistic monotony can't be addressed. We already have enough metal texture packs, so I think it would be a good idea to include stone / wood / city / etc. textures and direct mappers to use them, which would be a great start toward covering more types of environments. I also believe we should invest in more player models, as different as possible from existing ones and each other.
End.
I'd like to know what you think and which of those things you agree on. Again, I'm not in the position to say what's good or bad... I'm just posting my observations on what I believe is limiting Xonotic from advancing and reaching its true potential. Only thing I'm sure about is that more could be done with little or no extra effort, and maybe lack of organizing is causing things to slip past us.
If possible, I would gladly help with what I can: I'm somewhat decent at modeling in Blender, although zero when it comes to texturing. At the beginning of the Xonotic project, me and FruitieX were assigned as map coordinators, although no one's contacted me ever since to ask me what I think about a map; If the devs trust me with that, I could at least include new maps myself after asking enough people.