Uty
I hate you, Milkman Dan
My company writes medical imaging software. Among our products is a development framework that allows other companies to quickly build their own medical imaging software. So, in a nutshell, we are writing code that other companies/people use to write code.
This is similar conceptually to the SDK (to be released), Python, and XML modification elements included in Civilization IV. I really think you guys did a great job by including this. The mod community did wonderful things with Civilization III and I get the feeling that imagination will be the limit this time around. (I am very excited.) However, I don't feel that you have followed through. These tools are not as powerful and worthwhile without proper documentation.
I have some suggestions (that stem from professional API development) to make your product better. I hope they will be taken into consideration.
- Make a development guide. My company's API has hundreds of objects and enumerations. I know what a lot of them do but what I have to remember is my clients do not. That is why we offer a development guide. It is sixty or so pages and it tells clients how they can use our code to make powerful applications. It has common examples. You might consider giving the following examples: making a new civilization, making a new unit, adding a new resource, configuring a civilization's personality, scenario events, new game screen.
- Look at MSDN. While they're notorious for providing code that does not compile, one has to admit that they offer a lot of documentation for each class used in Windows Development. Instead of listing what functions an object has, they describe the responsibilities and usage of an object. They also describe what the functions do, the arguments, and the return values. Consider how you would have learned Windows programming without information!
- Look at the questions people are asking in this forum. Determine what kinds of questions are the most common. Ignore things like "how do I write Python/XML code" because that is already described dozens of other places. Instead focus on queries such as "what does this function do" and "does anyone know what this series of XML tags are for."
- Hire an intern (or three) and have him/her make a mod. This is an exceptional idea because you have a modder in a structured environment but without all the Firaxian knowledge. You will be able to identify what people can figure out and what people can't figure out based on provided documentation. Hence, you will be able to focus on eliminating all nebulous aspects of modding.
- Release this information with your product. This is a matter of convenience and practicality.
Most of all, thank you for making this great game.
This is similar conceptually to the SDK (to be released), Python, and XML modification elements included in Civilization IV. I really think you guys did a great job by including this. The mod community did wonderful things with Civilization III and I get the feeling that imagination will be the limit this time around. (I am very excited.) However, I don't feel that you have followed through. These tools are not as powerful and worthwhile without proper documentation.
I have some suggestions (that stem from professional API development) to make your product better. I hope they will be taken into consideration.
- Make a development guide. My company's API has hundreds of objects and enumerations. I know what a lot of them do but what I have to remember is my clients do not. That is why we offer a development guide. It is sixty or so pages and it tells clients how they can use our code to make powerful applications. It has common examples. You might consider giving the following examples: making a new civilization, making a new unit, adding a new resource, configuring a civilization's personality, scenario events, new game screen.
- Look at MSDN. While they're notorious for providing code that does not compile, one has to admit that they offer a lot of documentation for each class used in Windows Development. Instead of listing what functions an object has, they describe the responsibilities and usage of an object. They also describe what the functions do, the arguments, and the return values. Consider how you would have learned Windows programming without information!
- Look at the questions people are asking in this forum. Determine what kinds of questions are the most common. Ignore things like "how do I write Python/XML code" because that is already described dozens of other places. Instead focus on queries such as "what does this function do" and "does anyone know what this series of XML tags are for."
- Hire an intern (or three) and have him/her make a mod. This is an exceptional idea because you have a modder in a structured environment but without all the Firaxian knowledge. You will be able to identify what people can figure out and what people can't figure out based on provided documentation. Hence, you will be able to focus on eliminating all nebulous aspects of modding.
- Release this information with your product. This is a matter of convenience and practicality.
Most of all, thank you for making this great game.