Author Topic: Necessary compatibility/interoperativity  (Read 1505 times)

narcisgarcia

  • Guest
Necessary compatibility/interoperativity
« on: 13 October 2010, 09:13:40 »
One big step was the games/servers explorer tool in the application.

Due to the different versions that people have installed in different distributions and from different repositories, the major part of Glest users will never have the same MegaGlest version, nor latest version.

It's necessary to separate communication protocol version from application version, and maintain interoperativity between different installations&versions during some time. For example, preparing all 3.4.x versions to use "3.4" protocol until next 3.5 version

v3.4.0 = protocol 3.4
v3.4.1 = protocol 3.4
v3.4.2 = protocol 3.4
v3.4.3 = protocol 3.4
v3.4.4 = protocol 3.4
v3.5.0 = protocol 3.5
v3.5.1 = protocol 3.5
v3.5.2 = protocol 3.5
v3.5.3 = protocol 3.5

This could promote more online plays.
« Last Edit: 13 October 2010, 09:19:56 by Narcis Garcia »

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,239
    • View Profile
Re: Necessary compatibility/interoperativity
« Reply #1 on: 15 October 2010, 20:51:02 »
You don't understand what you are asking. If this was easy to do we would have done it long ago. The problem is NOT as simple as a network protocol! The problem involves things like Different AI code and logic, cross platform differences between versions, etc.

This is precisely why many cross platform RTS games would suffer from similar problems, unless of course they have a completely different design. Remember we also offer the easy ability to create mod's and exnted the game features easily, which many other games do not (yes some do).

Thanks

narcisgarcia

  • Guest
Re: Necessary compatibility/interoperativity
« Reply #2 on: 15 October 2010, 21:17:19 »
Doesn't the AI work only on server?

Do clients in a game also work in AI and logic? If so, can be this open for cheating?

silnarm

  • GAE Team
  • Behemoth
  • ********
  • Posts: 1,373
    • View Profile
Re: Necessary compatibility/interoperativity
« Reply #3 on: 16 October 2010, 01:10:44 »
Doesn't the AI work only on server?

Do clients in a game also work in AI and logic? If so, can be this open for cheating?

Traditionally the AI is run on all machines and must make identical decisions, although MG does support server controlled AI now.  In either case, cheating is not really possible, even with the AI controlled by one computer, everything it does must be 'legit' or its actions will fail on the other computers and the games will be out of synch.

The fact that everyone runs the simulation and that each simulation must be in synch makes the game surprisingly resilient to any cheating, anyone even trying a simple map-hack is in for a surprise or two...

This also means that the tiniest changes in code make versions incompatible, as softcoder already pointed out.
Glest Advanced Engine - Code Monkey

Timeline | Downloads

softcoder

  • MegaGlest Team
  • Battle Machine
  • ********
  • Posts: 2,239
    • View Profile
Re: Necessary compatibility/interoperativity
« Reply #4 on: 16 October 2010, 01:37:01 »
Yes we do have server controlled AI as default in MG. Code changes between versions however are still susceptible to different behaviour as well as the fact that the path finder may also do different things. This leads to another idea... server controlled pathfinding would likely create a greater level of network stability play. Perhaps we will do this in the next release.

titi

  • MegaGlest Team
  • Airship
  • ********
  • Posts: 4,240
    • View Profile
    • http://www.titusgames.de
Re: Necessary compatibility/interoperativity
« Reply #5 on: 17 October 2010, 23:50:14 »
PLease lets discuss such a big change first  ;)
Try Megaglest! Improved Engine / New factions / New tilesets / New maps / New scenarios

 

anything