[MODCOMP] New Profession: Inventor w/ TechTree

Yes, I thought of this as well cause the cool Civics feature doesn't come in until the end of the game. But, then again you are not really a "Self Governing" nation yet and only until you declare independence do you write up a constitution.

AFAIK because of the distance, colonial governors had some autonomy. I think it would be interesting too if it became a new king demand - for example, making you choose between a tax raise or the king imposing a certain civic upon you.

But, then again for future mods and such I thought it would be cool to have like Statesmen able to Research new Governing Pholosophys or Techs and such.

That's a pretty interesting idea. You could use the BellsStored as a cost for such research as well as normal YIELD_IDEAS, which would expand the use of bells. In case you choose to do so, I recommend changing doBells() in CvPlayer so that the king increasing units in the REF doesn't deplete the BellsStored, but rather depletes a second variable that is also dependent on bell rate.

And about the AI, I'll make it so that to start with they just randomly gain a Tech. Then I will add actual AI that starts to do Research and the Speed is based on Difficulty levels. Then I want to add the abililty to trade techs.

You could just set a loop and then the AI will research the first tech that fulfills the requirements you set in canDoCivics() in CvPlayer for techs. AFAIK the AI would eventually start setting people as inventors even without any special modifications.

If any of you guys want to help out with this project with coding or art that would be good. Just let me know and we can figure out what needs to be done.

I could help with the coding.
 
All your ideas, Androrc, are duly noted. Thanks for the offer to help.

I am just about ready upload the next version which adds the new Research Advisor screen. It works pretty cool. The new Techs are on one side of the screen devided into groups. When you select one to research it gets highlighted yellow then the techs it leads to get highlighted blue. You will be able to do all your tech changes from this screen and or the city screen.

This system works fine with the player only have one research project going. If we went to a Research per city it would have to change of course. Research per city, that is each city having its own research project, would require a lot more projects altogether or the Player would prolly run out of projects pretty quick. For now I am just going to leave it as one project per player.
 
That sounds great, I can't wait to try it out! :cool: It's probably best how you have it, making different projects for every city could likely lead to issues with micromanagement or confusion anyway.

I don't know how the tech trading in Civ4 works, but maybe you'd be able to copy some existing code from Civ4 diplomacy system and adapt it for tech trading. Could you add a tag to CivilizationInfos enabling some civs to start out with certain techs? In that case some good tags for techs could be:
<bResearchable> (could be 0 for some special nonresearchable techs that only natives start out with)
<bTradable> (0 for techs that can't be traded.)
 
I don't know how the tech trading in Civ4 works, but maybe you'd be able to copy some existing code from Civ4 diplomacy system and adapt it for tech trading. Could you add a tag to CivilizationInfos enabling some civs to start out with certain techs?

There is the initial civics field the XML in vanilla as residual from Civ4, so you should be able to set them that way.
 
There is the initial civics field the XML in vanilla as residual from Civ4, so you should be able to set them that way.

Yeah, I'll look into all that soon.

I just uploaded the next version. I have the new Research Advisor up and running so test it out for me. Also, I added a tutorial on adding new tech Categorys on the main page as you have to do it a certain way to get python to read it correctly.


Edit: I noticed a couple things while testing just now that skip my attention. Like the Cost in hammers is not displayed on the Research Advisor screen. I will post an update later tonight to fix this.

Also, the next thing I want to add is the ability to add different Yields as requirements.
 
First variant of Native Technologies.

proposalsnativetechnolo.jpg


nativetechnologiesdetai.jpg

Any critical remarks and proposals?

To be continued.....
 
First variant of Native Technologies.

proposalsnativetechnolo.jpg


nativetechnologiesdetai.jpg

Any critical remarks and proposals?

To be continued.....

Sounds good :)

I would rename "Diplomacy" to something more specific to natives though. By the way, what is "Citrus Fruits" supposed to represent? New World citrus fruits, or the development of anti-scurvy treatment? If it is the first, I think it would be nice to rename it to something more specific to the New World, such as naming it after a specific New World citrus fruit.

About the Native Medicine, I think you could use the "iCheaperPopulationGrowth" instead of adding food, as IMO a higher population growth rate (via lower population growth threshold) represents better what medicine means than giving +1 food.
 
Well, one thing to keep in mine is game balance. Say for fishing, if you add +1 to water tiles thats an extra food you are getting that on the current game balance you don't have. So, that makes the game easier after you spent the initial cost to discover native fishing. The cost of research helps balance things out somewhat. Another thing to remember is there is a 300 game turn limit. So, time is valuable and you have to spend your time researching things that add to what you are trying to achieve. Also, generally its better to make rule changes that make the game more challenging. If the games becomes too easy and there is no challenge it can get boring. Basically, we will have to balance out the FF, buildings, resources, and now Techs.

For example on balance, if we give a +1 to food for Native Fishing we should make Docks only give us a bonus of +1. This makes the game say +2 harder cause now you have to spend resources in Native Fishing to get the same +2 bonus. But, now we can add another tech like Native Fauna that gives us +1 to skins and that would help balance things out cause you are having to spend resources and time on both Native Fishing and Fauna.

Another thing is I want to work mostly with the Buildings and Resources the game already has and make a "Basic Tech Mod" so that we can all use that as a basis to Mod our other projects. And later on we can add things in like a "Health System" to help balance things out more and make an "Advanced Tech Mod". So with all that in mine I'll make my suggestions.

I like the techs you have chosen and here is the changes I'd suggest

Native Fishing: +1 food to food water tiles (docks only +1)
Native Flora: free Explorer1 to Scouts, lodge in jungle
Native Potato: +1 food center tile (from extra food source being discovered)

Native Citrus Fruit: Reveals Citrus (or Bananas) here I want to do something "special" cause Scurvy was a huge thing back in the New World times and thousands of people died from it trying to cross the oceans. And the sad part was the cure was all around them the whole time just no one knew about it. So, thats why I want this tech to give you a population boost as more people are survivng the trek across the seas. Like it is it gives a +1 population to all your cities. So, with this tech it would be a good thing to hold out until you have a few Cities established.

Also, just for future reference if we added in a Health System. Units that cross the ocean could have a chance to contract "Scurvy" until this is Researched. Scurvy would cause the unit to become immobile for a certain amount of turns:blush:

Native Medicine: this would help keep your citizens alive thus increase populations faster. Thats why I added the new tag for decreasing the Growth Threshold. I still like that for this tech and -10 is a subtle change and would not through the game out of balance. Requires Native Citrus and Native Diplomacy

Native Fauna: +1 to furs. if we add in animals (that would be cool actually) we can make a new promotion that adds bonus to attack/defend animals.

Native Diplomacy: requires Native Fauna and Native Flora. Only after you show interest in learning about your new environment do the natives truly want to talk. Better relations and time to research Native techs is good here

One new Tech perhaps

Native Spirit: requires Native Diplomacy. Gives Ranger2 to all your units
 
I realize that I set up the Research Advisor Python screen locations for my resolution I have right now. I need to fix it so that it is the same no matter what resolution you are using. So, I am currently trying to rememeber all the math I forgot so as to do this. But The resolution I have it set to is 1360 x 768.
 
OK, I took into account your remarks and here the corrected version for Native Technologies.

proposalsnativetechnoloj.jpg


021zrv.jpg

022dg.jpg

I have one problem with term of "Diplomacy".
My idea was very simple. Before to study something with Natives, each European colonist must know their local dialects. Thus, I planned to add the term "Language" or "Diplomacy". Maybe "Tradition" or "Relations" could be used instead of "Diplomaty". Maybe other term will be more correct..... Any ideas are welcome.

Native Citrus Fruit: Reveals Citrus (or Bananas) here I want to do something "special" cause Scurvy was a huge thing back in the New World times and thousands of people died from it trying to cross the oceans. And the sad part was the cure was all around them the whole time just no one knew about it. So, thats why I want this tech to give you a population boost as more people are survivng the trek across the seas. Like it is it gives a +1 population to all your cities. So, with this tech it would be a good thing to hold out until you have a few Cities established.

I added also the bonus "Banana" as a new Native Technology. I don't know is it possible to organize the cumulative effect from both "Citrus Fruits" and "Banana" education. I mean that "Native Medicine" could be educated when only one of technologies ("Citrus Fruits" or "Banana") was discovered. However, if the second techology will be discovered, then the Growth Threshold percent should be -20% instead -10% when only one of previous technologies is open.

If this addition is too complicated to do, then "Banana" could be educated as "Potato" without link to "Native Medicine".

About Canoe.
I guess it would be a good idea to add such navy unit. You have "Canoe" in your "Privateer" mod. Such unit could be used as navy "scout" and later, when a Dock/Shipyard will be build in the city, Canoe could be upgraded to Galley/Caravel/Galeon.

Also, just for future reference if we added in a Health System. Units that cross the ocean could have a chance to contract "Scurvy" until this is Researched. Scurvy would cause the unit to become immobile for a certain amount of turns:blush:
It would be absolute great addition. I tried to find the way how to implement such feature in "1492: Reefs and Wheather" mod for damaged units moving through storms and reefs. Unfortunately, up to now without success.:sad:
 
I've been trying it out.. seems to be working great! :goodjob:

I'm not so concerned with the details of what specific techs you'll put in the modcomp version, since I'd be most interested with using your system and XML tags to make techs for a new version of my mod:king::borg: So, I really appreciate you're making it with moddability in mind.

I think the interface screen you made looks really good, except for the screensize issue you mentioned.

To help out with mods that may make a lot of techs (like mine..:p), you could have the left and right sides of the screen display only all the techs from a single category, and the player selects which category to display by clicking on the categories in a single row along the top.

On the left, maybe show techs that can't be researched yet with a red border. The tech being researched can have a white border and also be under the magnifying glass. Instead of 75% complete, could show something like
75/100 <bulbs>, 8 turns to complete
Requires <tobacco><tools>


I'm really excited for it to enable the use of yields other than Tools.. Once that's done, in the city screen the tooltip text for the Tinker's House could show something like:
Researching Tobacco Farming (75/100 <bulb>, 8 turns)
Converts 1<tobacco> 1<tools> into <bulb>


Another cool addition would be a <PythonDiscover> tag, that lets you enter a name for a python function that modders could add in CvEventManager.py which will be called when the tech is discovered (maybe using arguments of just the tech and the player). Hopefully that could enable some really versatile moddability without needing to work on lots more tags.

Also a <PythonCanResearch> tag could let you enter a name of a python function to be called when checking if a tech is researchable. If there's no function listed, it uses the already existing requirements system. If a function is listed there, it would call that function and the tech is researchable based on whether the python function returns true or false.

By the way, in this modcomp how do you set how the techs affect various tile bonuses (like "Unknown Native Plant")? My mod has pretty extensive changes to the vanilla version's bonuses so I'm not sure how to adjust them.
 
I have one problem with term of "Diplomacy".
My idea was very simple. Before to study something with Natives, each European colonist must know their local dialects. Thus, I planned to add the term "Language" or "Diplomacy". Maybe "Tradition" or "Relations" could be used instead of "Diplomaty". Maybe other term will be more correct..... Any ideas are welcome.

You could use "Pidgin Language"; Pidgin languages are simple languages that arise through the need to do trade and etc. between peoples of different cultures and are a mix of the two original languages. Not ideal as a name for a technology, but I can't think of anything better at the moment.
 
You could use "Pidgin Language"; Pidgin languages are simple languages that arise through the need to do trade and etc. between peoples of different cultures and are a mix of the two original languages. Not ideal as a name for a technology, but I can't think of anything better at the moment.
Obrigado, Androrc the Orc! "Pidgin Language" is exactly the term that I need. Here the article from Wiki:

A pidgin language is a simplified language that develops as a means of communication between two or more groups that do not have a language in common, in situations such as trade, or where both groups speak languages different from the language of the country in which they reside (but there is no common language between the groups). A "pidgin" language is, fundamentally, a simplified means of linguistic communication, as is constructed impromptu, or by convention, between groups of people. A "pidgin" language is not the native language of any speech community, but is instead learned as a second language. A "pidgin" language may be built from words, sounds, or body language from multiple other languages and cultures. "Pidgin" languages usually have low prestige with respect to other languages. Not all simplified or "broken" forms of a language (patois) are "pidgin". Each "pidgin" language has its own norms of usage which must be learned to speak the "pidgin" language well.

This text is practically ready for CivPedia.
 
@ KJ Jansson

Native Traditions sounds good to me for Diplomacy. And Native Medicine should require Citrus Fruits and Native Traditions. Also, Potatos should only add the +1 to center tile as it would require adding in a Potato resource. Addinging resources is out of the scope of the "Basic Tech Mod" we want to complete first.

Like orlanth says below "details of what specific techs" and such will be up to each individual modder. We just want to give them a good selection of techs and examples to go by.


I've been trying it out.. seems to be working great! :goodjob: I think the interface screen you made looks really good, except for the screensize issue you mentioned.

Yeah, I am getting the "screensize" issues worked out so I will have that fixed later today.

To help out with mods that may make a lot of techs (like mine..:p), you could have the left and right sides of the screen display only all the techs from a single category, and the player selects which category to display by clicking on the categories in a single row along the top

Thats a good idea actually. I could add in a check for if the amout of techs is greater then X then make the screen work as you say above.
Edit: If I can figure out Sliders then there want be a problem there.

On the left, maybe show techs that can't be researched yet with a red border. The tech being researched can have a white border and also be under the magnifying glass. Instead of 75% complete, could show something like
75/100 <bulbs>, 8 turns to complete
Requires <tobacco><tools>

Turns to complete is something not easy to add in cause you have to factor in each city's production of "Research". And that would change each time you move a colonist or altered something to do with it and would need to be recaluated each time you did. I may check into what that would require. Right now its just easier to do a Progress check.

I'm really excited for it to enable the use of yields other than Tools.. Once that's done, in the city screen the tooltip text for the Tinker's House could show something like:
Researching Tobacco Farming (75/100 <bulb>, 8 turns)
Converts 1<tobacco> 1<tools> into <bulb>

Yeah, I will be working on this next. After that I plan on adding in the AIs ability to get techs and then the ability to trade techs.

Another cool addition would be a <PythonDiscover> tag...
I am just starting to figure out Python and combing Python and SDK so maybe I can figure out how to do this eventually cause it would be a cool addition.


By the way, in this modcomp how do you set how the techs affect various tile bonuses (like "Unknown Native Plant")? My mod has pretty extensive changes to the vanilla version's bonuses so I'm not sure how to adjust them.

Right now if a Yield is set in the "AllowsYield" it will not show up on the map unless it has a "Bonus". Like all grassland can farm food and tabacco but until you research tobacco the plant itself want be seen on the map. The Bonus graphic will appear however. I need to change the "Unknown Native Plant" to something else so that it covers more things than just plants:) maybe, "Unknown Native Resource"
 
A very draft preview of the possible Technologies.

part2tg.jpg

Unfortunately, I have too much information and ideas about possible variants and their combination.

1. Medicine.
Medical Drugs -> Tourniquet -> Vaccination. Maybe "Immunity" (as more common term comparing to Vaccination) here will be the best final point in Medicine?
In this variant both "Microscope" and "Surgery" could be removed.

2. Military.
Here I changed/added nothing comparing to original variant. 4 Military Technologies look optimal at the current number or resources (without Gunpowder).

3. Trade/Economics.
Currency (or "Coins Printing" in the colony, source material - Silver is available). How to convert such coins into Money? Very easy through a new YIELD_COINS that could be sell in Europe. Probably another way is available.
"Trade Routes" or "Silkroad" could give some advantages for trading with natives or between European cities in the New World.
"Banking" could be used in the future for "Loan/Deposit" operations.

4. Most difficult part is "Discoveries".
Question. Which technologies should be the most important for Colonization?
Answer: Probably, related to Sailing ("Ocean Sailing", "Cartography", "Shipbuilding")
Next priority should be mineral resources processing like "Metal Casting" required for Military Technogies ("Culverin Barrel" and "Flnklock Musket") and for Tools production.
After couple centures - maybe "Telegraphy" and "Raylways".

There are a lot of another variants of development. Any critical remarks and proposals?

P.S. I suppose each Euponean nation could know at least 1 European technology. Spain could know for instance "Ocean Sailing", France - "Alchemy" (required for "Medical Drugs" and "Metal Casting"), etc.
 
A very draft preview of the possible Technologies.

part2tg.jpg

Awesome buttons :)

Unfortunately, I have too much information and ideas about possible variants and their combination.

1. Medicine.
Medical Drugs -> Tourniquet -> Vaccination. Maybe "Immunity" (as more common term comparing to Vaccination) here will be the best final point in Medicine?
In this variant both "Microscope" and "Surgery" could be removed.

I think "Immunization" is more common, but I'm not sure. I like having Surgery, as it was an important development of the times, so I think it should be kept.

2. Military.
Here I changed/added nothing comparing to original variant. 4 Military Technologies look optimal at the current number or resources (without Gunpowder).

3. Trade/Economics.
Currency (or "Coins Printing" in the colony, source material - Silver is available). How to convert such coins into Money? Very easy through a new YIELD_COINS that could be sell in Europe. Probably another way is available.

You could have a "Mint" building, which would transform Silver into gold directly (would be better to change gold's name to "Funds" or "Currency" or something similar). It could need workers to make it function or not (I'm not sure if a profession can just consume yields without producing any; I think so, but I would have to test).

"Trade Routes" or "Silkroad" could give some advantages for trading with natives or between European cities in the New World.
"Banking" could be used in the future for "Loan/Deposit" operations.

You could also use "Banking" to increase the production modifier of converting Silver into money.

4. Most difficult part is "Discoveries".
Question. Which technologies should be the most important for Colonization?
Answer: Probably, related to Sailing ("Ocean Sailing", "Cartography", "Shipbuilding")
Next priority should be mineral resources processing like "Metal Casting" required for Military Technogies ("Culverin Barrel" and "Flnklock Musket") and for Tools production.
After couple centures - maybe "Telegraphy" and "Raylways".

There are a lot of another variants of development. Any critical remarks and proposals?

P.S. I suppose each Euponean nation could know at least 1 European technology. Spain could know for instance "Ocean Sailing", France - "Alchemy" (required for "Medical Drugs" and "Metal Casting"), etc.

Sounds like a nice idea, though in the example of "Ocean Sailing" I think they should all start with it, as it is kind of implied by them being in the New World. Or maybe change the tech's name to "Improved Ocean Sailing" or something similar, that would work too.
 
To my opinion "Immunization" could be result of both "Vaccination" and long time living in some specific natural conditions, that is something similar to acclimatization. As I remember from my "previous life" after couple months in Brasil I fill myself very comfortable and +40oC for me was absolutely normal temperature.

"Mint" building
Yes, I could very easy construct "Mint" building to transfer Silver in Coins. However, how these coins transfer into money? Do you have any ideas?

I planned a lot of months ago to construct "Tower" (or illegal building) where my colonists could made fake coins from Silver and Gold. It's happen a lot of times in history and could present in the game. When such Tower is constructed, the King became very angry and the possibility of King's Empire invasion will grow very fast. Unfortunately, I couldn't find good solution for such operation when "fake coins" => "money" on my colonist account. I refuse the possibility to sell these coins as usual good in Europe.

I don't think that all nations should start with "Ocean Sailing". Spain and Portugal were first nations who discover a lot of New World. They must have some bonus in their ship speed. France, England an The Netherlands should study "Ocean Sailing" to get the similar bonus. It gives some difference in starting conditions.
 
"Mint" building
Yes, I could very easy construct "Mint" building to transfer Silver in Coins. However, how these coins transfer into money? Do you have any ideas?

I meant transferring to money directly, without having a YIELD_COINS. For example, if it doesn't use workers, could go like this: in the city's doTurn() function, the game checks to see if the city has the Mint built, and then reduce the Silver stored in the city to 0 and change the money of the city's owner proportionally to how much Silver there was in the city.

I don't think that all nations should start with "Ocean Sailing". Spain and Portugal were first nations who discover a lot of New World. They must have some bonus in their ship speed. France, England an The Netherlands should study "Ocean Sailing" to get the similar bonus. It gives some difference in starting conditions.

Yes, but what I meant is that, as all nations start with a caravel arriving in the New World, it is implied that they know ocean sailing already.
 
I meant transferring to money directly, without having a YIELD_COINS. For example, if it doesn't use workers, could go like this: in the city's doTurn() function, the game checks to see if the city has the Mint built, and then reduce the Silver stored in the city to 0 and change the money of the city's owner proportionally to how much Silver there was in the city.

You mean that "the city's doTurn() function, the game checks to see if the city has the Mint built" is already present in source codes?

I tried to realize such possibility:
- Construct Mint
- Send colonist (criminal) in the Mint building
- each turn depending on productivity some quantity of Silver => Fake coins.

In the variant you mention all Silver will converted in money in one turn. It's good comparing with nothing, but not exactly what I want.

If, of course, I understand you correctly.

P.S. Thank you for gamefonts.
 
Back
Top Bottom