RevolutionMP

glider1

Deity
Joined
May 29, 2006
Messages
2,905
Location
Where animals hop not run
Authors
-------
Jdog5000, Glider1

Concept:
--------
To make the Revolutions mod work perfectly in multiplayer. Once this is achieved, to then integrate this work with RevolutionDCM and make it work perfectly in multiplayer as well. The latter could well be achieved by integrating components into RevolutionMP until RevolutionMP is equivalent to RevolutionDCM. At every step, multiplayer support is the primary objective.

Download
http://forums.civfanatics.com/downloads.php?do=file&id=14254

SVN (for absolute latest version)
https://revolutiondcm.svn.sourceforge.net/svnroot/revolutiondcm/branches/RevolutionMP
 
Revolutions:
Here are the test conditions:
1) Direct IP
2) Barb Civ off (may not need to be)
3) Barbarian World off' (may not need to be)
4) Start as minors off (may not need to be)
5) Revolutions on
6) Dynamic civ on
7) Tech diffusion on

This is what will cause OOS:
1) A player dies (A player dies (defeated - just get the the host to reload the game)
2) A player chooses accept and lead the rebels
3) A player chooses to hand over control

This should work:
1) A player chooses to recognise independence
2) A player chooses to reject terms
3) A player chooses to bribe
4) AI suffers revolts of any type
 
-------------------------------------
Change Log Version 0.10 to 0.20
-------------------------------------
- Updated to latest Revolution 2.7pre
- Init on page 2 of the RevolutionMP forum finds a spawnList issue.

-------------------------------------
Change Log Version 0.00 to 0.10
-------------------------------------
- BTS patch 319
- Revolution Mod version 2.60 from RevolutionDCM_2_60
 
You have this on the todo list:

Fix autoplay and changeplayer


Changeplayer is a cheat option, it should not be enabled in MP games. Best thing to do would be to rip it out, it really shouldn't go into MP.
 
Is autoplay usefull in MP at all?
It just seems to be out of place under MP conditions.
 
@PPQ
Good question PPQ. They are needed for the Revolutions behaviour options to cede control of your leadership for x-amount of turns, or when the player wants to join the rebels. Currently in this MP build, if the code wants to cede control, the MP session will drop because of the auto play code, and if an MP player chooses to join the rebels, the game will OOS because of the change player code. The only options that work in the test lab are to ACCEPT, REJECT or BRIBE the rebels. In single player, the build should work as per normal.
Cheers
 
That is interesting. I always thought it was only limited to that auto play on the beginning of the game.

Thank you for your answer.
 
If you could test it for me that would be great. The more information on MP we get the better. Remember that:

"The only options that work in the test lab are to ACCEPT, REJECT or BRIBE the rebels. In single player, the build should work as per normal."

Cheers
 
I just wish this would be done so that 420 can make wolfRev MP stable so that I can finaly make my brother into a civ adict.
 
@Duneflower and PPQ_Purple
Thanks for testing it!!!! I know it can be a pain in the butt to help test an MP prototype. Could you be a little bit more specific and tell me what does work? The build should be synced across all players for all revolutions situations except if someone in the game has to hand over control to an AI leader for x-turns, or if someone in the game decides that they want to lead the rebel side. Both those will cause OOS. However simple accepting, rejecting and bribing should be ok.

Cheers and thanks so far.
 
Note to any testers/helpers for this mod:
If you people continue to test it for me, I will add more features to this build, so long as MP always works with each new feature. However remember that the ultimate goal is to merge RevolutionMP with RevDCM, and so adding features that are not in RevDCM would be pointless to this goal.
Cheers.
 
Well, I have to admit that my initial test didn't even last a full turn as my only real purpose in it was to make sure I didn't get the game-destroying weirdness that happens in DCM. :p Also, just as a note, I'll likely be doing most of my testing in hotseat.
 
Me 2 I am absolutely newer able to play online or via LAN... my only source of MP is my poor brother and hotseat games vs my self.
 
I have tested RevolutionMP with 4 players over Direct IP. The game ran fine for 109 turns. No out-of-sync and no Python errors. It seemed to work great. Then I got a Python error on the 110th turn. This was after I had rejected the rebel turns for the second time in the same city, so I believe it's related to the spawning of rebel units around that city perhaps.

Anyway, here's the traceback:
Code:
ERR: Python function onEvent failed, module CvEventInterface
Traceback (most recent call last):

  File "CvEventInterface", line 30, in onEvent

  File "CvCustomEventManager", line 143, in handleEvent

  File "CvCustomEventManager", line 154, in _handleDefaultEvent

  File "Revolution", line 565, in onEndPlayerTurn

TypeError: len() of unsized object
ERR: Python function onEvent failed, module CvEventInterface

The game didn't go out of sync and it continued as normal after this, so it wasn't a fatal bug.

Apart from this everything I tried worked. Accepting rebels terms to form a new civ in one of my cities worked. Also rejecting the terms worked.
 
Just had an out of sync on turn 211/330 :( All the info I have is from the event log:

1882 (211)

Great Scientist born
Peace Treaty cancelled after 10 turns

The Khmer rebels had risen from an Indian AI civ's city in 1880 and the turn after the out of sync error it said they had been destroyed. Why / how I don't know.

Two human player game via gamespy, I was Babylonians and he was Greek. Indian was the only starting AI. Had three splinter AI's Gilgamesh and Saladin from my cities and Elizabeth + Khmer rebels from Indian.
Hope this helps.

lemmy
 
Top Bottom