Good afternoon, All,
I wanted to pose an interesting thought exercise to those interested in such. I've always been attracted to the concept behind the Traveller: 5641 project. If you aren't sure of what I'm talking about, check it out here:
http://www.freelancetraveller.com/features/othroads/t5641/index.html
How would you model something like this as a software application?
I imagine you'd have to start with a comprehensive data source, and scrub away all social data, except for those on the worlds designated as homeworlds for the project.
Starting with the universal data, one would then have to perform a series of iterations over the data, each iteration representing the passage of a certain amount of time.
I imagine that each cycle would have to perform something akin to the following steps:
1) Determine the location of all worlds with Class A & B starports (as these can most easily maintain jump-capable starships). These are called Seeder Worlds, for lack of a better name. If a Seeder World is non-aligned, then create a new Allegiance code for it.
2) Iterate through the world data, checking each unpopulated world to see if it is within a year's jump range of any of the Seeder Worlds. (Jump range is determined by TL, as per High Guard, etc., as well as some magic number of jumps, usually 35, that can be made in a year.) Looking at the closest Seeder World, we'd check to see if the unpopulated world got populated as a colony.
3) For each Allegiance code, determine if the polity has reached its point of collapse. If so, change the Allegiance code of all of these worlds to Na, and set a flag to run a collapse procedure on the data during the "passage of time" phase. For more information, check out this discussion:
http://www.travellerrpg.com/cgi-bin/Trav/CotI/Discuss/ultimatebb.cgi?ubb=get_topic;f=5;t=000220
Alternately, create a subroutine that breaks the polity into smaller polities based on centers of high population and technological advancement, and change Allegiance codes accordingly.
4) Starting over with the list of worlds, run each populated world through a general "passage of time" random flowchart to update the UWP, perhaps complete with random events. If a world is flagged as collapsed, run some collapse procedure on it, and insure that its Allegiance code is now Na (unless you are using the alternate suggestion above). Remove the flag used to indicate collapsed worlds, so it doesn't deteriorate over the years because it's always collapsing.
5) Produce reports for this particular point in history, such as new UWP files, etc., so that the progress can be tracked along the way by those interested in seeing the evolution of the milieu.
6) Return to step 1 for the next stage of development.
Right now, I'm just kicking ideas around. I may never tackle a project like this, but I at least would like to walk through the logic behind it.
What are your thoughts?
Enjoy,
Flynn
I wanted to pose an interesting thought exercise to those interested in such. I've always been attracted to the concept behind the Traveller: 5641 project. If you aren't sure of what I'm talking about, check it out here:
http://www.freelancetraveller.com/features/othroads/t5641/index.html
How would you model something like this as a software application?
I imagine you'd have to start with a comprehensive data source, and scrub away all social data, except for those on the worlds designated as homeworlds for the project.
Starting with the universal data, one would then have to perform a series of iterations over the data, each iteration representing the passage of a certain amount of time.
I imagine that each cycle would have to perform something akin to the following steps:
1) Determine the location of all worlds with Class A & B starports (as these can most easily maintain jump-capable starships). These are called Seeder Worlds, for lack of a better name. If a Seeder World is non-aligned, then create a new Allegiance code for it.
2) Iterate through the world data, checking each unpopulated world to see if it is within a year's jump range of any of the Seeder Worlds. (Jump range is determined by TL, as per High Guard, etc., as well as some magic number of jumps, usually 35, that can be made in a year.) Looking at the closest Seeder World, we'd check to see if the unpopulated world got populated as a colony.
3) For each Allegiance code, determine if the polity has reached its point of collapse. If so, change the Allegiance code of all of these worlds to Na, and set a flag to run a collapse procedure on the data during the "passage of time" phase. For more information, check out this discussion:
http://www.travellerrpg.com/cgi-bin/Trav/CotI/Discuss/ultimatebb.cgi?ubb=get_topic;f=5;t=000220
Alternately, create a subroutine that breaks the polity into smaller polities based on centers of high population and technological advancement, and change Allegiance codes accordingly.
4) Starting over with the list of worlds, run each populated world through a general "passage of time" random flowchart to update the UWP, perhaps complete with random events. If a world is flagged as collapsed, run some collapse procedure on it, and insure that its Allegiance code is now Na (unless you are using the alternate suggestion above). Remove the flag used to indicate collapsed worlds, so it doesn't deteriorate over the years because it's always collapsing.
5) Produce reports for this particular point in history, such as new UWP files, etc., so that the progress can be tracked along the way by those interested in seeing the evolution of the milieu.
6) Return to step 1 for the next stage of development.
Right now, I'm just kicking ideas around. I may never tackle a project like this, but I at least would like to walk through the logic behind it.
What are your thoughts?
Enjoy,
Flynn