• Civilization 7 has been announced. For more info please check the forum here .

Modscenario: Playable Byzantines, 610AD.

Yes, they were slightly different than the Independants.

Still, it somehow feels as if you still play a minor civ, and things get further confusing when you share a border with also grey-ish Germany. I'd suggest imperial red or purple for Byzantium, since that were the colors historical Byzantium used most.
 
Is it Carthage that uses purple in RFC? If they are, it would be available in the 600AD start.

What about BTS, is Byzantines purple there?
 
Sorry my mistake, the Byzantines are dark grey (not INDEPENDANT grey) in bts. But there's a 1000AD earth map where the Byzantines are purple, almost identical to Carthage, if not the same.

Yes Carthage is purple in RFC
 
u nid the latest version. if you have it then its probably becos you put the folder in the wrong location. if not i dunno i didn't create it
 
I'm having a problem with civilizations names showing up wrong in the message scroll, it's always shows itself. For example, if Spain declares war on someone I always get the message "Spain has declared war on Spain", any fix for this?
 
Heya, I don't want to bring the thread off topic, so if anyone can answer me in private messages it'd be great...

As we all know, the Byzantines are the same civ as the Celts in the mod.

I'm trying to do this with the RFC 3000 BC unlocked version, swapping the Celts for the Carthaginians (instead of for the Greeks). Is there any way to enable the Celts to produce settlers?**

Also, I've got them to swap places, but now I need to get new core and extended areas defined, change the uhvs from the Carthage ones to new Celt ones (I have some ideas) and fix the spawn locations so that Carthage spawns in it's old core area with some cities and the Celts spawn at 53, 48 (Bordeaux)

This seems to be exactly what you guys have done here, so if anyone has insight or advice it would be much appreciated. Again, though, please reply in a private message so as not to hijack TDK's thread.

Thanks

**I just managed to enable the settlers by editing Civ4CivilizationInfox.xml
 
I just downloaded this, and I must say it makes me very happy. Now I can play all three of my favorite empires on RFC. In my current game, by stability is shaky and going down, at about 1450 AD (which makes sense, considering how in the real world the empire should only be Constantinople and a few feilds at this year). I'm using the strategy mentioned earlier in this thread. As soon as Alexandria went rogue, er, independent, I got every single military unit into Constantinoplis to wait out the inevitable collapse.

What really annoys me is the fact that the Turks won't die. Every time I wipe them out, there's more spawning. It's like the game is rigged against the utter annhiliation of a people. The Turks not dieing is my biggest problem with this (mod)mod, otherwise, it's awesome.
 
I have found 3 bugs:

Fixes:
Spoiler :

Handler
line 387
replace 181 with 182


line 601
replace 181 with 182



RiseAndFall
line 2273

replace 181 with 182


but as for the "declare war on itself" bug, it seems to come from the DLL.
So, in order to be tracked, the DLL itself should be debugged, that's up to TDK or whoever owns the source code of the modified DLL. CvTeam::declareWar could be the place to look.
However, it doesn't seems to cause any issue. A declares war on B regardless of "A declared war on A" message.
 
Thanks a lot Rhye.

The "A declare war on A" message is really not something I changed in the code, and I know other people have gotten it when adding civs in worldbuilder.

I looked in CvTeam and this is what I'm guessing is relevant, but I really have no informed idea:
Code:
void CvTeam::declareWar(TeamTypes eTeam, bool bNewDiplo, WarPlanTypes eWarPlan)
{
	PROFILE_FUNC();

	CLLNode<TradeData>* pNode;
	CvDiploParameters* pDiplo;
	CvDeal* pLoopDeal;
	CvWString szBuffer;
	bool bCancelDeal;
	int iLoop;
	int iI, iJ;

	FAssertMsg(eTeam != NO_TEAM, "eTeam is not assigned a valid value");
	FAssertMsg(eTeam != getID(), "eTeam is not expected to be equal with getID()");

Code:
			if (!isBarbarian() && !(GET_TEAM(eTeam).isBarbarian()) &&
				  !isMinorCiv() && !(GET_TEAM(eTeam).isMinorCiv()))
			{
				for (iI = 0; iI < MAX_PLAYERS; iI++)
				{
					if (GET_PLAYER((PlayerTypes)iI).isAlive())
					{
						if (GET_PLAYER((PlayerTypes)iI).getTeam() == getID())
						{
							//szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_DECLARED_WAR_ON", GET_TEAM(eTeam).getName().GetCString()); //Rhye
							szBuffer = gDLL->getText("TXT_KEY_MISC_YOU_DECLARED_WAR_ON", GET_PLAYER((PlayerTypes)eTeam).getCivilizationShortDescription()); //Rhye
							gDLL->getInterfaceIFace()->addMessage(((PlayerTypes)iI), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_DECLAREWAR", MESSAGE_TYPE_MAJOR_EVENT, NULL, (ColorTypes)GC.getInfoTypeForString("COLOR_WARNING_TEXT"));
						}
						else if (GET_PLAYER((PlayerTypes)iI).getTeam() == eTeam)
						{
							//szBuffer = gDLL->getText("TXT_KEY_MISC_DECLARED_WAR_ON_YOU", getName().GetCString()); //Rhye
							szBuffer = gDLL->getText("TXT_KEY_MISC_DECLARED_WAR_ON_YOU", GET_PLAYER((PlayerTypes)getID()).getCivilizationShortDescription()); //Rhye
							gDLL->getInterfaceIFace()->addMessage(((PlayerTypes)iI), true, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_DECLAREWAR", MESSAGE_TYPE_MAJOR_EVENT, NULL, (ColorTypes)GC.getInfoTypeForString("COLOR_WARNING_TEXT"));
						}
						else if (GET_TEAM(GET_PLAYER((PlayerTypes)iI).getTeam()).isHasMet(getID()) && GET_TEAM(GET_PLAYER((PlayerTypes)iI).getTeam()).isHasMet(eTeam))
						{
							//szBuffer = gDLL->getText("TXT_KEY_MISC_SOMEONE_DECLARED_WAR", getName().GetCString(), GET_TEAM(eTeam).getName().GetCString()); //Rhye
							szBuffer = gDLL->getText("TXT_KEY_MISC_SOMEONE_DECLARED_WAR", GET_PLAYER((PlayerTypes)getID()).getCivilizationShortDescription(), GET_PLAYER((PlayerTypes)eTeam).getCivilizationShortDescription()); //Rhye
							gDLL->getInterfaceIFace()->addMessage(((PlayerTypes)iI), false, GC.getEVENT_MESSAGE_TIME(), szBuffer, "AS2D_THEIRDECLAREWAR", MESSAGE_TYPE_MAJOR_EVENT, NULL, (ColorTypes)GC.getInfoTypeForString("COLOR_WARNING_TEXT"));
 
Okay, I don't know how to debug anyway, but you make it sound like it's hard.
 
Just wanting to say I made a little set so that in the civilopedia a Byzantine button appears instead of a Greek one. Attached to post. Just extract it into the assets folder of this mod. I suggest probably backing up the two files it overwrites.

Also, I decided to change the "Control 3 Silk Resources" UHV, so I used Don't lose a city to the Turks/barbarians before 1500. Just wanting to know if this code will work, because I don't want to play to 1500 only to realize it doesn't work:

Code:
                elif (iPlayer == iGreece):
                        if (pGreece.isAlive()):
                                if (bConquest):
                                        if (self.getGoal(iGreece, 1) == -1):
                                                if (iGameTurn <= i1500AD):
                                                        if (playerType == iBarbarian or playerType == iTurkey):
                                                                self.setGoal(iGreece, 1, 0)

Thanks in advance.
 

Attachments

  • byzantine_button.rar
    96.4 KB · Views: 50
Does this mod work on a Mac? Since the coding is the same, I would assume so, but there is always the off chance it won't. Thanks.
 
Wait a minute... I played this, and it was definitely challenging, and much appreciated...
But is the control 3 silks even possible by 1450AD? It isn't like the silk road is really operating, all it takes is one moron barb city to pop up, or even an independent, and access is cut... I had astronomy, and still couldn't trade with China/Khmer...
What gives?
 
If you control the Levant and the Persian Gulf and have Astronomy, you'll have access to the silks.
It's definitely doable, but the 3 silks are obtained via unreliable means and not by the Silk Road, which isn't very historical. (I prebuilt a fort in the Philippines, got 1 from Japan and conquered Korea :D)
 
Top Bottom