From: Erik V. <eri...@xs...> - 2011-03-13 18:12:11
|
> Van: Rick Westerman [mailto:wes...@pu...] Ideally a turn > would look like: > > 1) Rails notifies you that it is your turn; e.g. through a > flashing icon on the rails window, via a taskbar flashing, audio, etc. > 5) You start off with current data (i.e., Rails has automatically > loaded in the game file) in front of you; do buy/sells as desired. > 6) You click the 'done/save' button This should not be too difficult to do. The trigger would not be any button, but just a change of who has the turn. Every, say, 30 seconds Rails could check for new files, load these, and display the results. A popup would signal your next turn. I'll try to write down a more detailed specification shortly. > Van: John A. Tamplin [mailto:ja...@ja...] I am just saying storing > files on a server and picking them up, loading and processing the file, saving > the file, etc is highly inefficient for running a distributed game, compared to > all clients seeing all the actions from the server as they happen and getting > notification directly that it is your turn rather than waiting for dropbox to > replicate the save file, Rails noticing the file is updated (which is also > problematic to notice when replication is complete to avoid reading a partially > replicated file), and replaying all the actions in the game to get to the state > for the next turn, etc. It isn't that bad: the game isn't replayed. All Reload does is checking if the saved actions are identical to those in the local processed-actions stack. Only new actions are processed. Of course I agree that true client/server would be a lot more efficient. But if I were you, I wouldn't hold my breath waiting to see that completed. If fairly simple features like Reload and Autosave/load (my proposed name of the new feature) enable Rails users to achieve near-real time play, I'm all for it to implement these first. Erik. |