CrossOver Support - Community Forums

Important Information These are community forums and not official technical support. If you need official support: Contact Us

CrossOver Linux
Discussion about CrossOver Linux

The following comments are owned by whoever posted them. We are not responsible for them in any way.

Back to Threads Reply to Thread

How does the process of making a Crosstie work?

Sup guys,

and yet another question. I know Crossties can only be provided by advocates. I'd like to know how some of that works.

  • How does an advocate find out what needs to be packaged/installed for a specific app or game? For example: Let's say an advocate wants to create a Crosstie for DC Universe Online. Does the advocate have to find out what packages are needed by testing and trying stuff out at random, or do these guys have tools to check what the app itself is asking for? Or is there a completely different way?

  • After an advocate successfully creates a Crosstie, it gets sent to the guys at Codeweavers, right? For security reasons, does Codeweavers review and test every single one of them to make sure no one tries to hide some evil code in there?

Thanks,
Alex

Alot of the time I just get on wine's appdb and check the dependencies there and then test it on my system. And yes it is reviewed after being submitted.

For me the process is like this:

1) attempt to install the target application in a fresh bottle

  • if installation does not work, check on google if anybody else found a solution or
  • create a log file and parse it for errors that stand out

Addition of various runtimes to the bottle depends on the steps above or by simply reading what an application needs on Windows. Especially the .NET ones. There are cases when wine's DirectX implementation is good enough to render stuff on screen but falls short for sound effects and music (they may cut off at some point) or there are input issues with various controllers like mouse and keyboard. These can be usually fixed by installing the Microsoft redistributable packages.

2) if installation was successful, l attempt to run the application

  • if it runs well for at least 30 mins => create crosstie
  • if it does not run, see the steps at 1).

Depending on exactly what needs to be done, if it can be reproduced with crossties => crosstie gets created. In some cases it's impossible to duplicate certain steps with crossties. See League of Legends as an example. A defect in wine and the game itself (which gets mitigated by the way windows allocates memory) requires the use of an external tool to "comb" through some files. I would not want to do this with crossties anyway. Projects like PlayOnLinux tackle this sort of issues with special builds of wine which carry patches that have not been mainlined yet.

Sup guys,

there we go! Awesome, thanks for the detailed info. It will help me test some stuff. The reason I ask: I have a problem getting Resident Evil Revelations and DC Universe Online to run properly. I'll try to follow the steps you guys just provided me and report back here. I think both titles just might be missing something to make them run good.

Just in case you guys have an idea what might be causing the issue for the two games I mentioned:

  • DC - Installation via Crosstie works just fine. The game launches successfully after the installation process has been completed, but the mouse pointer is stuck and can't be moved. See here for more details: http://www.codeweavers.com/compatibility/browse/name/?app_id=8408;forum=1;msg=144644

  • RE: REV: I haven't created a forum post for this one just yet. I am still trying to find out what might be causing the problem. The issue is: I download and install the game via Steam. The game itself launches successfully afterwards, but gets stuck when trying to load a new game. It's an endless loop... it just loads forever. Because of this, a user on Winehq suggests using the x86/32-bit version of Wine for the game. Any ideas? There's a demo of the game available via Steam, just in case anyone wants to try it out.

Feedback is appreciated.

Thanks again,
Alex

Update: I think I owe you guys one. I just followed your tips and checked Winehq for whatever might be missing to make RE:REV run after loading. And I found the answer. A user on Winehq posted that Wine needs: d3dx9, vcrun2005, vcrun2008, xact, wmp10

So I went ahead and installed the following into my Steam bottle

  • Microsoft Media Sound Player Engine 9 via Crossover 13 (there's a Crosstie for it)
  • DirectX 9
  • Microsoft Visual C++ 2005 and 2008 were already in my Steam bottle

The game now starts and loads without a problem. It even loads and runs faster than on Windows! I played at medium to high settings with 60+ fps. Loading is a lot faster via Crossover as well. And to make things better - multiplayer works too. I am very, very pleased by this success. It can be so easy, if you know what you're looking for.

Alex

Alexander Tornow wrote:

  • How does an advocate find out what needs to be packaged/installed
    for a specific app or game? For example: Let's say an advocate wants
    to create a Crosstie for DC Universe Online. Does the advocate have
    to find out what packages are needed by testing and trying stuff out
    at random, or do these guys have tools to check what the app itself
    is asking for? Or is there a completely different way?

  • After an advocate successfully creates a Crosstie, it gets sent to
    the guys at Codeweavers, right? For security reasons, does
    Codeweavers review and test every single one of them to make sure no
    one tries to hide some evil code in there?

Just as the others have said, testing and reading to find out what the application. Then, add that information to the tie, test it, submit it.

What do we do when we get a tie for review?

We look. We check it out. Some titles we do not have and have no great way of acquiring, sometimes there are not enough hours in the day to test every tie submitted to us.

A tie is an XML file of course. We read it.

We look for what might be malicious. We look for too broad of glob for install detection. We look for where the download is coming from and if it's sane. We read the installation instructions the author provides and we read and check any registry keys that are set.

If we see something that is an easy fix (a typo usually), we might take a moment to fix it. If there's something more questionable or there's more work to be done, we send it back to the author with a brief explanation.

After getting through responding to all the support tickets for the day I also go through all the other compatibility center queues as well. Checking and approving/rejecting all the new applications, screenshots, advocates, and mailing advocate swag. Crosstie files are by far the most time intensive and require a good eye and practice to get quicker at. Even then I'll still grab an app (if there's a demo available or we already have it) and run the tie against it to make sure it installs. But because crosstie files are so involved they're not always instantly approved, it might be a day or three before I can get caught up.

:D

Hello Mr. Wills and Mr. Balfour,

@Both: I appreciate the feedback. It pleases me that you have taken the time to give me some insight on your workflow. It's interesting and it also helps understand the process better. I have worked as support staff for a gaming related subject/product as well and I understand how time consuming the job can be. Replying to tickets and mails, testing, reviewing, staying up to date in order to provide high quality feedback and repsonds... and so on. It's a fulltime job, but at least in my case - it was a lot of fun most of the time.

@Mr. Wills: About the XML file. After you successfully test and find out what the app needs, do you create the XML file manually by typing lines of code or is it an automated process that you do via Crossover or a different tool?

Thanks,
Alex

Advocates have access to a handy-dandy Crosstie Editor that can be used right from the browser. The tab appears on the targeted application page if one is an advocate and if he/she has added that application to their list of advocated apps.

All the XML is generated automatically after various fields in the editor are filled. Some are required, like the CrossOver version we're creating the crosstie for, or the OS to be "emulated" but most are optional. Crosstie creators fill in only what they need to.

Yep, we use the same CrossTie editor and only dig into the raw XML if we have to do something really unusual or we're feeling particularly self-abusive that day. Mr. Caron Wills is more familiar with the CrossTie XML syntax than me ;)

Hello,

that actually sounds pretty straighforward and relatively easy. Good idea to keep things simple! That's exactly how it has to be. Hm, I might think about helping out in the future after all. Let's see how much time I can dedicate to it. Anyway, the information provided by you guys answers my question.

@all: Thanks for taking the time to explain! I appreciate it.

Alex

1 to 11 of 11

Please Note: This Forum is for non-application specific questions relating to installation/configuration of CrossOver. All application-specific posts to this Forum will be moved to their appropriate Compatibility Center Forum.

CrossOver Forums: the place to discuss running Windows applications on Mac and Linux

CodeWeavers or its third-party tools process personal data (e.g. browsing data or IP addresses) and use cookies or other identifiers, which are necessary for its functioning and required to achieve the purposes illustrated in our Privacy Policy. You accept the use of cookies or other identifiers by clicking the Acknowledge button.
Please Wait...
eyJjb3VudHJ5IjoiVVMiLCJsYW5nIjoiZW4iLCJjYXJ0IjowLCJ0enMiOi02LCJjZG4iOiJodHRwczpcL1wvbWVkaWEuY29kZXdlYXZlcnMuY29tXC9wdWJcL2Nyb3Nzb3Zlclwvd2Vic2l0ZSIsImNkbnRzIjoxNzMxNDM1MjAzLCJjc3JmX3Rva2VuIjoiYXZaZnlTZjhxdk5MYm52QiIsImdkcHIiOjB9