Multiple Engine Support Howto

Multiple Engine Support Howto

For the discussion of infrastructure improvements and changes.

Moderator: Moderators

Post Reply
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Multiple Engine Support Howto

Post by AF »

Hello,

Some people are claiming that multiple engine support is already here.

Assuming this is true and ignoring any controversy, if I were to build a new tool, how would I implement this multiple engine support? How does it work? Where does it work?
User avatar
Licho
Zero-K Developer
Posts: 3803
Joined: 19 May 2006, 19:13

Re: Multiple Engine Support Howto

Post by Licho »

What tool are you talking about? What is your question about?
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Multiple Engine Support Howto

Post by AF »

Hoijui mentioned some people are claiming that multiple engine support is here, and some people are disputing this.

If I were to build a new tool such as a settings app, a launcher, a lobby etc, how would I account for multiple engine versions? What should I keep in mind to make sure my tool doesn't break things and plays nicely, and how does the existing multi-engine support work?
gajop
Moderator
Posts: 3051
Joined: 05 Aug 2009, 20:42

Re: Multiple Engine Support Howto

Post by gajop »

It's uses in some form in the ZK project, and as far as I know the only lobby that supports it is ZKL.
It probably isn't standardized, and it most definitely doesn't work on linux currently.
User avatar
Licho
Zero-K Developer
Posts: 3803
Joined: 19 May 2006, 19:13

Re: Multiple Engine Support Howto

Post by Licho »

There are many aspects to the question

1) engine support (DONE)
2) lobby server support (DONE)
3) buildbot support (windows only)
4) lobby client support (ZKL only)

Which part interests you?
User avatar
AF
AI Developer
Posts: 20687
Joined: 14 Sep 2004, 11:32

Re: Multiple Engine Support Howto

Post by AF »

All save buildbot really, as buildbot doesnt seem to be so much of a client thing but more a dev tool. It'd be better if we had a single thread that had it all anyway, I've seen various disparate and incomplete mentions of it that don't really do much good in painting a full picture, or a complete one either

What particularly has me, is how do you know which version of spring a battle is on the server, and where do you store the copies of the engine?
User avatar
Licho
Zero-K Developer
Posts: 3803
Joined: 19 May 2006, 19:13

Re: Multiple Engine Support Howto

Post by Licho »

Uberserver has compat flag (one of those: a sp eb) and then there is
OPENBATTLEEX which gets engine name and engine version between map name and map hash parameters
(same for BATTLEOPENEDEX and

If the lobby does not support this compat flag and battle engine version != server default engine version ubersrever automataicalyl puts engine version text into battle title along with "incompatible" text so it has some backwards compatibility.


ZKL stores engines in "engine" folder with each subfolder containing one engine version - subfolder name =engine version name.
Post Reply

Return to “Infrastructure Development”