New Victory Conditions

no, because this concept is the one specifically applying to the end game, that is why it is in the victory conditions section.

Full blown espionage system will be different because it will involve a profession and units and missions etc.

Thisi s more like a build up to end game event. As previously discussed.

Not a player on player espionage mechanic.
 
Ok, lets say they are two different features, spying on REF and spying on other players. However while they are very different in gameplay, they are similar enough in the DLL that they could share the underlying code or at least a noteworthy part of the code. From a coding perspective, it makes no sense not to try to think ahead and try to make a design, which handles both as this will reduce coding time and presumably also make it easier to test and make bugfree.
 
What if we do something like

100 gold = 1 Spy
1 Spy = 1% chance of success (overall success and per unit discovery success chance)
1 Spy = 1 Unit Chance to Discover

we then add in something like a -10% Chance so that it will never be 100%, with perhaps a random 1-9% Chance.

So 1 spy would have a 1-10% chance to discover 1 Unit.

100 Spies would have a 90-99% Chance of discovering up to 100 Units.

That would more of less put an upper limit of 10,000 gold.

We could change variables if it needs to be bigger or smaller.

Well, 100 gold per spy may be a bit stiff early in the game as you wouldn't be able to send many spies so we can adjust that. The Price per spy could increase as the size of the REF increases to add some urgency to this. I like what Night said about CivEffects adding modifiers. This may can wait till we expand on this concept further later on though.
 
you left off there... THERE!! No there!!! Look.... Look where I am pointing!!! THERE!!!

Thanks Lib, I can always count on you ;)

Ok, yeah, this is what I have at the moment.

1. When you start a new game with a Hidden REF, you don't see any units in the Conquest Screen.

2. I have it set up so you can just press alt-K and bring up the Spy menu. This will need to be changed to pop up when more units are added to the REF.

3. You will get a message that says something about hearing rumors of a growing threat and are asked if you want to send spies.

4. If you choose yes you get another pop up that tells you how much do you want to spend on spying.

5. After a couple turns you get another popup telling you the spies have arrived successful (no failure yet) and you are asked if you want to review the report. Which simply takes you to the Conquest Screen and you see the size of the REF with a date of the last spy mission.

That's it so far. What needs added is...

2. When you get your first increase of the REF, the Spy menu will appear asking you if you want to send spies. After that I am thinking we can add a new Icon to the Conquest Screen that will let you send spies perhaps when your report is out of date.

4. The current max gold to spend is set to player max gold with minimum of 100. What should the cost be and how does it effect chance?

5. A formula needs added to determine the success of your mission and the time it takes. I am thinking to keep it really simple to start with, making this just a bit of extra fluff to spice up the game story a bit. When we get around to adding in Espionage we can expand on this.
 
5. A formula needs added to determine the success of your mission and the time it takes. I am thinking to keep it really simple to start with, making this just a bit of extra fluff to spice up the game story a bit. When we get around to adding in Espionage we can expand on this.
PHP:
bool CvPlayer::isSpySuccessful() const
{
    if (GC.getInitCore().getLeaderName(getID()) == L"Nightinggale")
    {
        return true;
    }
That would be a good start :lol:
 
That would be a good start :lol:

Did you take your meds? You was cracking jokes all day yesterday ;)


Ok, I need to talk this through...


1. Before the REF is ever increased the player doesn't see any Invading Units in the Conquest Screen. After the first increase the player gets the Send Spies popup. They can either send spies then, or later.

I will need to add a means to know if the first increase has happened or not.

Edit: This can be done with the getLastSpyOnREFYear() function I added. If it is -1 no increase has happened yet. Once it does it will either be set to 0 or the date of the last report, depending on if the player sent spies.

I need to add a report message for the first time that it increases and then a slightly different message the next times it increases.

A. If they send spies later an active Spy Report Icon appears next to the Invading Force list, and the hover text says, "Click to send spies blah blah blah". You click this to bring up the Send Spies Menu.
B. If they send spies, the Send Spies Menu pops up.
C. If the player doesn't have enough funds, he needs to be told that no spy missions can take place.

2. Send Spy Menu: Here you select how much gold you want to spend on the mission. The spies then depart. The Spy Report Icon's hover text then states that spies are on a mission and turns to complete.

3. If the mission is successful The Spy Report Icon's indicates that the report is up to date and the button is inactive.

4. If the mission fails The Spy Report Icon remains active for you to attempt again.

5. If you ever lack funds to send spies the Spy Report Icon will be inactive and the help text will explain you lack funds.

Edit: I need to add in the XML the minimum cost for these spy missions.

There could be consequences for not keeping up with the Spy Report. Perhaps there could be a chance for a Ramped Rumors Civeffect that decreases Fealty production for a time while Rumors run ramped about a foreign threat, causing mass hysteria.

I've also added the Turn and Date to the Conquest Screen so you can better compare the dates on your reports. We can further add Turns left to Declare Emperor.
 
Did you take your meds? You was cracking jokes all day yesterday ;)
Typical american thinking. Sure the capitalistic medical industry wants everybody to take lots of pills daily, but the majority of people do not need stuff like that. As for telling jokes, well that's being myself when I'm in a "can't be bothered to do serious stuff like coding" mood :lol:

In fact I haven't touched the code in days, though that is partly because I had other stuff, which took my time and priority. However that turns out to be lucky because it has given me time to think and I have decided that I want a different design for the next step, which will make future expansion easier. Coding is hard. It's wrong if you do it too quickly or too slow :crazyeye:

As for the spy business. I wonder if we should have a spy yield like BTS. Perhaps it could be possible to spend some of it each turn to examine another player to increase the chance of spy missions (allows better spy plans when the target building is already known and such). Likewise spy points (as well as other factors) can be used to decrease spy success rate for other players. With a foundation like this, we can add steal technology and other interesting spy actions later.

Maybe we should add the ability to catch a spy and make that spy return false information. This way even if you are informed of something by a spy, you can't be completely certain that it is true. This could be telling about fake troops and stuff like that.

Maybe a spy unit can attach to a foreign unit and you will get the field of vision from that unit.

There are plenty of spy related stuff we can add, but the most important part is to make the foundation first, which allows us to easily add new spy options later. This mean the base for cost, perhaps yields and other stuff like that. Maybe CivEffects can unlock spy options and success rate. CivEffects could perhaps also decrease enemy success rate, making the spy business a CivEffect race.
 
Typical american thinking. Sure the capitalistic medical industry wants everybody to take lots of pills daily, but the majority of people do not need stuff like that. As for telling jokes, well that's being myself when I'm in a "can't be bothered to do serious stuff like coding" mood :lol:

Never been called a typical american but I do reckon that was a typical american response. I'm with you though, too many people taking too many pills just to cover up a symptom of the real problem.

Anyway, I moved your good ideas of the spy stuff to the spy thread :)
 
I am about finished with the Spy on REF addition. I am making it really simple to start with. The mission cost 100 gold and only has a 10% chance to fail. I need to set these in XML as at the moment they are just hard coded.

I am going to finish out this last saved game and then restart a new game. If I make it a good ways through without any real issues I may ask for others to start testing as well, depending on how close Night is ready for a merge.
 
Back
Top Bottom