Swinkscalibur
Prince
I've been pondering new ideas for unique mechanics to add to a new civ (I figure creating a unique civ is a good way to improve my modding skill) In the mean time an idea tumbled out of the jumble that was my brainstorming and I wanted to toss it around to everyone before I jump into what will surely be the somewhat intensive process of making it a reality.
I want to put the context in place. I was and am fond of the game Final Fantasy X in which one of the characters has an ability which allows her to combine random items for different effects in battle. This got me thinking about how I could adapt this for RifE. The entire scope of my idea is planned eventually as the central theme of a new civ (or perhaps a Dural+ mod). However the first phase of implementation can work as a smaller mod that can stand alone. Thus ...
A new World Wonder : ---- needs a good name ----
Description: ---- need a new character name ---- has created his/her master workshop of the culinary arts. A beautiful sprawling kitchen full of the bounty of the surrounding lands. Living units from far and wide can try their hand at cooking up some tasty treats or not...
Essentially the idea is to create an ingredient promotion for every food based resource. I came up with the following list (broken down into basic food categories):
Units can pay a small to medium amount (depending on the ingredient) to take any number of these promotions (1 at a time). A unit can only use an ingredient corresponding to a bonus the unit's civ controls.
Nothing will happen with these promotions at all until the unit pays for the "Cook the Ingredients" promo. This promotion comes with a pyPerTurn function that immediately checks for other ingredient promos. Then checks the ingredients against a hidden "secret" (for anyone who doesn't cheat and look at the code) recipe list. Finally it removes all the ingredient promotions as well as the cooking promo and applies a promotion based on the resulting dish.
Some dishes will be utter duds. All successful dishes will have a duration effect. Most will be minor to moderate buffs. The strongest buffs will often result in negative after affects (through <promotionDegradesTo> or whatever that tag is)
So there it is. What do you think? I have two questions for those in the know. Can a promotion be specified as AI or Human only? (If so I would make the ingredients human only and allow the AI to directly buy the dishes - else teaching the AI would be impossible - how does the AI handle the Master Buildings?) Secondly, Valk can you create a new boolean tag for promotions <bIsIngredient> that is exposed to xml and python. This would significantly ease the programming to find the ingredients chosen.
Other ideas: I may also allow creating a successful dish to give all of the creating civs units an effect promotion "PROMOTION_DISH1_ISKNOWN" which allows the units to directly buy the promotion "PROMOTION_DISH1". Hopefully this would cut down on needless tedium (after all the fun part is the discovery) and perhaps these promotions can be given to the AI for free? That part I don't know about.
Edit: I don't know why I didn't think of this before. I will simply make the "Cook the Ingredients" an ability/spell with a cost as opposed to another promotion. Another promotion would be a bit more complex and for no good reason.
Edit2: In fact, in order to reduce clutter I will create a second spell to start the cooking process called "Create Dish." The spell will require the wonder and a living unit. For human players, casting this spell grants an effect promotion that allows taking ingredient promos and also casting "Cook the Ingredients", for the AI casting this spell does nothing. Also as soon as the wonder is built, python grants the "X_ISKNOWN" promotions to all the units of all the non-human players.
I want to put the context in place. I was and am fond of the game Final Fantasy X in which one of the characters has an ability which allows her to combine random items for different effects in battle. This got me thinking about how I could adapt this for RifE. The entire scope of my idea is planned eventually as the central theme of a new civ (or perhaps a Dural+ mod). However the first phase of implementation can work as a smaller mod that can stand alone. Thus ...
A new World Wonder : ---- needs a good name ----
Description: ---- need a new character name ---- has created his/her master workshop of the culinary arts. A beautiful sprawling kitchen full of the bounty of the surrounding lands. Living units from far and wide can try their hand at cooking up some tasty treats or not...
Essentially the idea is to create an ingredient promotion for every food based resource. I came up with the following list (broken down into basic food categories):
- Grains - (Corn, Wheat, Rice)
- Plants - (Mushrooms, Bananas, Fruit Of Yggdrasil, Gulagarm)
- Land Meat - (Cow, Bison, Pig, Sheep, Horse, Nightmare, Camel, Deer, Arctic Deer)
- Sea Meat - (Toad, Clam, Shrimp, Fish, Crabs, Whale)
- Cooking Ingredients - (Salt, Sugar, Ale, Wine)
Units can pay a small to medium amount (depending on the ingredient) to take any number of these promotions (1 at a time). A unit can only use an ingredient corresponding to a bonus the unit's civ controls.
Nothing will happen with these promotions at all until the unit pays for the "Cook the Ingredients" promo. This promotion comes with a pyPerTurn function that immediately checks for other ingredient promos. Then checks the ingredients against a hidden "secret" (for anyone who doesn't cheat and look at the code) recipe list. Finally it removes all the ingredient promotions as well as the cooking promo and applies a promotion based on the resulting dish.
Some dishes will be utter duds. All successful dishes will have a duration effect. Most will be minor to moderate buffs. The strongest buffs will often result in negative after affects (through <promotionDegradesTo> or whatever that tag is)
So there it is. What do you think? I have two questions for those in the know. Can a promotion be specified as AI or Human only? (If so I would make the ingredients human only and allow the AI to directly buy the dishes - else teaching the AI would be impossible - how does the AI handle the Master Buildings?) Secondly, Valk can you create a new boolean tag for promotions <bIsIngredient> that is exposed to xml and python. This would significantly ease the programming to find the ingredients chosen.
Other ideas: I may also allow creating a successful dish to give all of the creating civs units an effect promotion "PROMOTION_DISH1_ISKNOWN" which allows the units to directly buy the promotion "PROMOTION_DISH1". Hopefully this would cut down on needless tedium (after all the fun part is the discovery) and perhaps these promotions can be given to the AI for free? That part I don't know about.
Edit: I don't know why I didn't think of this before. I will simply make the "Cook the Ingredients" an ability/spell with a cost as opposed to another promotion. Another promotion would be a bit more complex and for no good reason.
Edit2: In fact, in order to reduce clutter I will create a second spell to start the cooking process called "Create Dish." The spell will require the wonder and a living unit. For human players, casting this spell grants an effect promotion that allows taking ingredient promos and also casting "Cook the Ingredients", for the AI casting this spell does nothing. Also as soon as the wonder is built, python grants the "X_ISKNOWN" promotions to all the units of all the non-human players.