So a planet can initially cost more science than it produces
Your implementation makes sense if resources are global, as they are said to be in Crusade.
Oh, I think I understand what you meant. When you said, "cost more science than it produces", I am assuming now that you meant the total output of the colony would in that case be zero, not actually taking science from other more developed planets. I was definitely looking at it in a.. more evil way.
I am curious as to "how big" a planet would have to be to contribute, in that case. The devil is in the details - if you merely make the cost a function of how 'developed' the planet is, then canny players will just colonize big -- drop lots of people and buy out the first few buildings. It will definitely slow down expansion, but they'll just skip the 'developing' phase entirely. I'm not sure it would really have that much impact on tech snowballing.
My implementation would allow for real cost that can't be skipped over. It's gotta be paid. The only question is how painful the cost is and how fast it *can* be paid.
In the most simple example,
science cost = 3000 - 100*planet class (in this example I made development cost go up as the planet class goes down, but it doesn't necessarily have to be that way - sure would penalize players who simply must colonize every damn planet though. )
X = 5
Y = 50
The Empire of Pants colonizes a class 5 planet, Planet Crud. They currently have 500 science output.
Total science cost = 2500
First turn, progress is 0 so 5% of (2500-0) = 125 science is put towards the new colony. 125 is less than 50% of 500 so total empire output is simply (500-125) = 375.
If the player looks in their economy panel that turn they would see "Colony development: 125"
if the player looks at Planet Crud they will see that the Development Index is 5%.
Next turn, progress is 125 so 5% of (2500-125) = 119 science is put towards the new colony. Total empire output this turn is 381, assuming no other changes.
If the player looks in their economy panel that turn they would see "Colony development: 119"
if the player looks at Planet Crud they will see that the Development Index is 9.8%.
Clearly in this case colonizing even one more crappy planet will incur a ruinous development cost (nearly half the global science budget!), at least for a while.
Thinking about it some more, I'm not sure I actually like my implementation that much - it is an unavoidable cost, to be sure, but also a linear one. Science output still goes up as a linear function of developed planets. It would slow down the snowball some, to be sure, especially for large Y values -- maybe enough to make tall empires competitive. Or maybe it just forces everyone to go tall until you can almost ignore the fixed cost, then spread out like wildfire.
What's the old saying - for every problem, there is a solution that is simple, easy, and wrong?