Hi!
In this very long post I'd like to point out some of the major problems I've encountered during mapping for Xonotic, and I'd also like to give some solutions on those problems.
Ok, let me state this as fast, straight, honest, and clear I can: the current mapping procedure for Xonotic is slow, bureaucratic and generally unpleasant to work with, and sometimes it doesn't even give the satisfaction in the end.
Getting a map ingame takes about 4-5 months. Yes, you've read that right. You might ask, why does that take so long?
Let me explain:
First 1-2 months:
Building the map. This means, you have all the required sources, like:
A neat concept, that you have in mind: the general layout, item placement, style etc. of your map. This is the most fun part of the whole procedure, it lets your creativity fly, and if you don't run into (you always do ) in any sort of bugs of the compiler, the engine, or netradiant, the most easy part too.
However, this is the part where the whole mapping procedure can go wrong, and the problems here didn't found and fixed will escalate during the whole process, and getting worse and worse to fix later.
There are a couple of major problems here from my experience:
1: You overestimate your knowledge, and hence overcomplicate the map. You don't have enough experience, time, and additional knowledge to finish it. Time is the easiest thing to solve. The others, are not so much. Making a good, high quality map requires skills in:
-modelling
-making textures and additional shaders for your map, or fine tune existing ones for your liking
-generating or getting sounds
2: You don't fine tune the basic layout and item placement, and it turns out later in the end, the whole map sucks gameplay wise.
This is the part where you probably keep the map to yourself. It's in alpha stage, not ready for gameplay (you think). False. But it'll get back to this later.
Second part:
Bughunting, detailing up, fine tuning. Given the input from others you get (sometimes ZERO), this can take about a month.
You try to polish up the map as good as possible. Fixing small texture misalignments, detailing up the map, fine tuning lighting, placing sounds, and in the end, optimising for best performance. Official Xonotic maps have a very high quality check on visuals and performance too, and I'm not even sure this is needed in all cases at all. Too bad, the same can't be told for gameplay. To get input in this issue, this is the stage where you do beta releases (if you do), and wait for input from the rest of the community. You even try to contact server admins to put the map on their servers, so people can test it.
Problem: nobody does.
Third part:THE MERGE REQUEST
You finished your map, and you're generally happy how it turned out. Finally, you hit the merge request button. The only thing you need to do, is to wait. And wait. And... wait. This is the most frustrating, and worse part of the whole procedure, waiting on the core team to try it and vote on the map. It can take a good MONTH, while nothing serious happens. It can also happen, that you still work on the map, fixing a few stuff here and there and in the end, the latest stage of the map's branch is a good 10 commits ahead compared to the merge request's. This is very bad and confusing for the Core Team, and the players too.
Fourth part THE MAP IS MERGED!!!
Yes, you've made it. After a couple of months of development, your map is finally in master. The next autobuild contains it. People finally notice it, and try to play... and in the end, it turns out, the map SUXX BIG TIME! Nobody plays it, because it doesn't play well, or have performance issues... and you say: "Fuck this shit, I'm not gonna touch that file again, I've spent a good half year on it, and I'm fed up with it! It even makes me puke just to look at the file in radiant!"
So... this is how mapping works right now for official maps. There are several problems we need to solve, none of them is easy to fix, but not impossible. So, let's go through all the issues, and how we together can fix them.
First of all, I'd like to propose the idea of a mapping team. Ideally, this consists of the mapper, a modeller artist, someone who can do textures, a coder, a server admin, and several playtesters. This in the end will speed up the mapping process, and help to make good quality maps. Let me explain in a more detailed fashion:
A: Planning the map
I think the most problems lie in the very first step, at square one: the idea, and the concept is kept in secret, and only the mapper knows about it.
I tried this aproach numerous times, it doesn't work. I think once the mapper has the idea of the map, that he/she would like to sooner or later get into an official release, they should make a top/down blueprint first, maybe map a proof of concept room of the style (this takes a couple of minutes for an experienced mapper) or anything else, so others can figure out how the map should look like. SHARE THE CONCEPT, share the idea here, on the forum. This leads to the following:
The community gets to know about a new map in the work, and can give feedback, right at the beginning about the style, and gameplay issues. This is very crucial, because this step can eliminate the problem I raised above: making a map that turns out to suck in the end. Also, this helps to form the mapper team too: those, who find enough interest to help the mapping process can offer their help, speeding the whole process up - with proper oragnisation, the more the people who work on the same issue, the faster it'll be done. I know this might be the hardest part, but we already know we have tons of talented people all around here, so why not team up?
Also, this part will lead us to another issue, that was not easy to realise for me first, but is very crucial:
B: What is the purpose of the map?
Let's face it: the Xonotic community is already torn apart into two factions: casual and "pro" gamers. This is inevitable, and it happens to every game, that the more competitive gamers find to be worthy enough to play. This can also be sign of Xonotic getting mature. Like it or not, you can't please the two crowd with the same maps. Let's see the differences here:
What does a casual gamer want from a map?
-great visuals, that is pleasant to even look at. Let's face it, good graphics sell even the most shit games, everybody knows this. Even if those maps doesn't play so well, have you ever walked around Red Planet just for the graphical amusement? Or Lab 610? I did, numerous times, that map is AWESOME. Or Glowplant. Or Lightspeed (ok, the last one might not be the best, but I think I got the visuals there well).
-Tons of weapons, items, health: you want to have FUN. What gives you more fun than tons of powerful, and playful weapons? Hell, imho the most fun weapon in the game right now is the T.A.G. seeker (right after the tuba, ofc.)
-Interesting map layout: hallways, big rooms, maybe TRAPS. Hot Grounds anyone?
-Oh, did I mention VISUALS???
On the other hand, what does the pro player want from a map?
-GOOD, TACTICAL MAP LAYOUT. This is the most important.
-Great visuals? Nah, this is NOT IMPORTANT AT ALL. We already know that most competitive players turn off every disturbing effects, that keep them distracted from fragging. Is there any reason at all in that case, to map and build those awesome details? The cold and unfogiving truth: there is none. It woulnd't be appreciated anyway. What you should however keep in mindm that you have to use textures more tactically, so players get a goot contrast.
-Good, tactical weapon, health and item placement is CRUCIAL, and competitive players don't like the fun weapons at all.
Prime example: q3dm6. It has a "pro" and a normal version. The normal version was shipped with Quake3, and the pro version was later added to the game, by the request of the more competitive players. In Quake3 the two maps were different files too, but thanks to the "gametypefilter" entity key, if the map isn't different in the layout, the fun and pro map can coexist in the same bsp.
From all the above, you can clearly see, you cannot please everybody with the same map. Or rather, you can, but is very hard, or you have to sacrifice a bit from the visuals (speaking of PRO maps). One of the best example is Stormkeep. Let's face it, that map is underdetailed to the rest of the official maps, however, it still doesn't look bad, and plays well. I've heard that Afterslime is the border on eyecandy, but the item placement could be improved for competitive gameplay (but it's good for casual FFA).
What I'm trying to say is that one can't please the causal and the competitive players with the same map, if mapped with the same way.
I propose a change of mind in the sence of mapping here: we have to decide about the purpose of the map from the very beginning, and focus on different goals:
For casual, the map has to be: highly detailed (Xonotic flagship map, Red Planet detail), and FUN to play
For competitive gameplay: details kept at minimum (around Stormkeep level), but more focus on tactical elements of gameplay
Separating these views will lead to more rapid, and focused development of maps, because everybody will know the goals and the audience the map tries to reach. This also means, that developers with different taste can team up more easily.
C: Development
Once we've came to conclusion about the goal of the map, the visual concepts and enough people gathered, then the real work can start. I think the best would be to start a forum thread, where the mapper group can keep in touch, and share ideas, tell requests, ask for help etc. Once the map reaches beta stage, server admins and players can be notified, so they can playtest. This further ties the knots between developers and players, and also gives opportunity for additional suggestions and bugreports from the community.
D: Merge request
At last, the map is finished, hopefully good enough quality for it's purpose, and can be merge requested. I think if we'd followed the procedure described above, the voting phase of the Core Team can go down a lot faster, and more safe.
So to sum up, I have the following suggestions for official map development:
-Any official maps have to go through an incubation period, when players and developers can share and discuss their ideas about the initial concept
-Assembling a team of map developers, who work together during the whole process
-Clearly making a difference from square one between "FUN" and "PRO" maps.
What do you think about this? Given my reasons can convince most of you, I'll create the incubator thread for one of my new maps in work, so we can finish it together.
In this very long post I'd like to point out some of the major problems I've encountered during mapping for Xonotic, and I'd also like to give some solutions on those problems.
Ok, let me state this as fast, straight, honest, and clear I can: the current mapping procedure for Xonotic is slow, bureaucratic and generally unpleasant to work with, and sometimes it doesn't even give the satisfaction in the end.
Getting a map ingame takes about 4-5 months. Yes, you've read that right. You might ask, why does that take so long?
Let me explain:
First 1-2 months:
Building the map. This means, you have all the required sources, like:
A neat concept, that you have in mind: the general layout, item placement, style etc. of your map. This is the most fun part of the whole procedure, it lets your creativity fly, and if you don't run into (you always do ) in any sort of bugs of the compiler, the engine, or netradiant, the most easy part too.
However, this is the part where the whole mapping procedure can go wrong, and the problems here didn't found and fixed will escalate during the whole process, and getting worse and worse to fix later.
There are a couple of major problems here from my experience:
1: You overestimate your knowledge, and hence overcomplicate the map. You don't have enough experience, time, and additional knowledge to finish it. Time is the easiest thing to solve. The others, are not so much. Making a good, high quality map requires skills in:
-modelling
-making textures and additional shaders for your map, or fine tune existing ones for your liking
-generating or getting sounds
2: You don't fine tune the basic layout and item placement, and it turns out later in the end, the whole map sucks gameplay wise.
This is the part where you probably keep the map to yourself. It's in alpha stage, not ready for gameplay (you think). False. But it'll get back to this later.
Second part:
Bughunting, detailing up, fine tuning. Given the input from others you get (sometimes ZERO), this can take about a month.
You try to polish up the map as good as possible. Fixing small texture misalignments, detailing up the map, fine tuning lighting, placing sounds, and in the end, optimising for best performance. Official Xonotic maps have a very high quality check on visuals and performance too, and I'm not even sure this is needed in all cases at all. Too bad, the same can't be told for gameplay. To get input in this issue, this is the stage where you do beta releases (if you do), and wait for input from the rest of the community. You even try to contact server admins to put the map on their servers, so people can test it.
Problem: nobody does.
Third part:THE MERGE REQUEST
You finished your map, and you're generally happy how it turned out. Finally, you hit the merge request button. The only thing you need to do, is to wait. And wait. And... wait. This is the most frustrating, and worse part of the whole procedure, waiting on the core team to try it and vote on the map. It can take a good MONTH, while nothing serious happens. It can also happen, that you still work on the map, fixing a few stuff here and there and in the end, the latest stage of the map's branch is a good 10 commits ahead compared to the merge request's. This is very bad and confusing for the Core Team, and the players too.
Fourth part THE MAP IS MERGED!!!
Yes, you've made it. After a couple of months of development, your map is finally in master. The next autobuild contains it. People finally notice it, and try to play... and in the end, it turns out, the map SUXX BIG TIME! Nobody plays it, because it doesn't play well, or have performance issues... and you say: "Fuck this shit, I'm not gonna touch that file again, I've spent a good half year on it, and I'm fed up with it! It even makes me puke just to look at the file in radiant!"
So... this is how mapping works right now for official maps. There are several problems we need to solve, none of them is easy to fix, but not impossible. So, let's go through all the issues, and how we together can fix them.
First of all, I'd like to propose the idea of a mapping team. Ideally, this consists of the mapper, a modeller artist, someone who can do textures, a coder, a server admin, and several playtesters. This in the end will speed up the mapping process, and help to make good quality maps. Let me explain in a more detailed fashion:
A: Planning the map
I think the most problems lie in the very first step, at square one: the idea, and the concept is kept in secret, and only the mapper knows about it.
I tried this aproach numerous times, it doesn't work. I think once the mapper has the idea of the map, that he/she would like to sooner or later get into an official release, they should make a top/down blueprint first, maybe map a proof of concept room of the style (this takes a couple of minutes for an experienced mapper) or anything else, so others can figure out how the map should look like. SHARE THE CONCEPT, share the idea here, on the forum. This leads to the following:
The community gets to know about a new map in the work, and can give feedback, right at the beginning about the style, and gameplay issues. This is very crucial, because this step can eliminate the problem I raised above: making a map that turns out to suck in the end. Also, this helps to form the mapper team too: those, who find enough interest to help the mapping process can offer their help, speeding the whole process up - with proper oragnisation, the more the people who work on the same issue, the faster it'll be done. I know this might be the hardest part, but we already know we have tons of talented people all around here, so why not team up?
Also, this part will lead us to another issue, that was not easy to realise for me first, but is very crucial:
B: What is the purpose of the map?
Let's face it: the Xonotic community is already torn apart into two factions: casual and "pro" gamers. This is inevitable, and it happens to every game, that the more competitive gamers find to be worthy enough to play. This can also be sign of Xonotic getting mature. Like it or not, you can't please the two crowd with the same maps. Let's see the differences here:
What does a casual gamer want from a map?
-great visuals, that is pleasant to even look at. Let's face it, good graphics sell even the most shit games, everybody knows this. Even if those maps doesn't play so well, have you ever walked around Red Planet just for the graphical amusement? Or Lab 610? I did, numerous times, that map is AWESOME. Or Glowplant. Or Lightspeed (ok, the last one might not be the best, but I think I got the visuals there well).
-Tons of weapons, items, health: you want to have FUN. What gives you more fun than tons of powerful, and playful weapons? Hell, imho the most fun weapon in the game right now is the T.A.G. seeker (right after the tuba, ofc.)
-Interesting map layout: hallways, big rooms, maybe TRAPS. Hot Grounds anyone?
-Oh, did I mention VISUALS???
On the other hand, what does the pro player want from a map?
-GOOD, TACTICAL MAP LAYOUT. This is the most important.
-Great visuals? Nah, this is NOT IMPORTANT AT ALL. We already know that most competitive players turn off every disturbing effects, that keep them distracted from fragging. Is there any reason at all in that case, to map and build those awesome details? The cold and unfogiving truth: there is none. It woulnd't be appreciated anyway. What you should however keep in mindm that you have to use textures more tactically, so players get a goot contrast.
-Good, tactical weapon, health and item placement is CRUCIAL, and competitive players don't like the fun weapons at all.
Prime example: q3dm6. It has a "pro" and a normal version. The normal version was shipped with Quake3, and the pro version was later added to the game, by the request of the more competitive players. In Quake3 the two maps were different files too, but thanks to the "gametypefilter" entity key, if the map isn't different in the layout, the fun and pro map can coexist in the same bsp.
From all the above, you can clearly see, you cannot please everybody with the same map. Or rather, you can, but is very hard, or you have to sacrifice a bit from the visuals (speaking of PRO maps). One of the best example is Stormkeep. Let's face it, that map is underdetailed to the rest of the official maps, however, it still doesn't look bad, and plays well. I've heard that Afterslime is the border on eyecandy, but the item placement could be improved for competitive gameplay (but it's good for casual FFA).
What I'm trying to say is that one can't please the causal and the competitive players with the same map, if mapped with the same way.
I propose a change of mind in the sence of mapping here: we have to decide about the purpose of the map from the very beginning, and focus on different goals:
For casual, the map has to be: highly detailed (Xonotic flagship map, Red Planet detail), and FUN to play
For competitive gameplay: details kept at minimum (around Stormkeep level), but more focus on tactical elements of gameplay
Separating these views will lead to more rapid, and focused development of maps, because everybody will know the goals and the audience the map tries to reach. This also means, that developers with different taste can team up more easily.
C: Development
Once we've came to conclusion about the goal of the map, the visual concepts and enough people gathered, then the real work can start. I think the best would be to start a forum thread, where the mapper group can keep in touch, and share ideas, tell requests, ask for help etc. Once the map reaches beta stage, server admins and players can be notified, so they can playtest. This further ties the knots between developers and players, and also gives opportunity for additional suggestions and bugreports from the community.
D: Merge request
At last, the map is finished, hopefully good enough quality for it's purpose, and can be merge requested. I think if we'd followed the procedure described above, the voting phase of the Core Team can go down a lot faster, and more safe.
So to sum up, I have the following suggestions for official map development:
-Any official maps have to go through an incubation period, when players and developers can share and discuss their ideas about the initial concept
-Assembling a team of map developers, who work together during the whole process
-Clearly making a difference from square one between "FUN" and "PRO" maps.
What do you think about this? Given my reasons can convince most of you, I'll create the incubator thread for one of my new maps in work, so we can finish it together.
"One should strive to achieve; not sit in bitter regret."