A Community discussion forum for Halo Custom Edition, Halo 2 Vista, Portal and Halo Machinima

Home  Search Register  Login Member ListRecent Posts
  
 
»Forums Index »Halo Custom Edition (Bungie/Gearbox) »Halo CE General Discussion »Halo Custom Edition on Linux ( 2017 )

Author Topic: Halo Custom Edition on Linux ( 2017 ) (21 messages, Page 1 of 1)
Moderators: Dennis

OrangeJuice
Joined: Jan 29, 2009

new content isn't a mod. hhtmods are mods.


Posted: Mar 13, 2017 05:45 AM    Msg. 1 of 21       
Revised Aug 31, 2019:

I got bored and installed linux today, I hate it. Too much crap to get anything working. I just wrote everything down in notepad and pasted it here really quickly. I'll edit it as I go so that it's more readable here on halomaps..

-snip- Don't need an intro anymore since this post is super old.

For myself, I used Ubuntu 19 (minimal netwok installer) and kernel 5.0.0-13-generic. Wine 4.0 (Ubuntu 4.0-1)

#### #### #### #### #### #### #### ####
HALO, PC, CE
#### #### #### #### #### #### #### ####

NOTES for halo:
  • Alt-F4 works
  • Mouse acceleration and smoothing only seemed to work after I downloaded/installed my GPU drivers for linux. But this is normal anyways.
  • startup arguments work (in steam, use the SET LAUNCH OPTIONS )
  • HAC2 works (yes. Map downloading, FOV, ..The Works..)
  • OpenSauce currently doesn't wanna work in wine4 on ubuntu19. (DirectInput fails to initialize)
  • Stock Guerilla and Sapien work.
  • OS_Guerilla works
  • OS_Sapien hangs and might hold your computer hostage.
  • Haloceded: Quitting haloded or haloceded might hold the command prompt or terminal hostage by keeping the enter-key permanently held-down.


    #### #### #### #### #### #### #### ####
    SAPIEN & OS_SAPIEN
    #### #### #### #### #### #### #### ####

    No noticeable problems for Sapien.

    OS_Sapien: OS_Sapien takes about 50 seconds to load a scenario. When it finally does, what you get is an editor that runs at 0-FPS and might hold your desktop hostage.
    I've tried everything from using builtin libraries for directx9, native directx9 libraries, silencing all WINEDEBUG output, etc. etc.
    I simply couldn't get OS_Sapien to work.

    This isn't really a surprise seeing as I never actually touch linux. Linux is something I install in a VM once a year out of boredom, and then delete after a week.
    I hope someone else smarter in this matter can give tips on getting OS_Sapien to play nicely.

    #### #### #### #### #### #### #### ####
    TOOL & OS_TOOL
    #### #### #### #### #### #### #### ####

    For these programs, I strongly recommend that you always run them in a desktop window, never from the TTY terminals. Use wineconsole to make shortcuts for them.

    wineconsole sets up a command prompt that accepts proper key commands like tabbing and using [up] and [down] to recall commands. It also stops haloceded.exe's echoes from bleeding into and overlapping the input prompt.
    Using wineconsole this way is what allowed haloded and haloceded to respond to commands at all.



    #### #### #### #### #### #### #### ####
    HALOCEDED(probably HALODED too.) (Didn't try any custom server programs. Just stock haloceded.)
    #### #### #### #### #### #### #### ####

    (TECHNICAL FAIL): Quitting haloded or haloceded might hold the command prompt or terminal hostage by keeping the enter-key permanently held-down.
    Make sure to run haloceded in a desktop window or it might hold a TTY terminal hostage.





    #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### ####


    #### #### #### #### #### #### #### ####
    INSTALLATION
    #### #### #### #### #### #### #### ####

    Halo Isn't really ....gold status when it comes to wine compatibility, so a lot of what you see next will require both wine and winetricks.
    Another thing: These install guides aren't in any particular order. You don't have to follow every guide and install everything. Feel free to install whatever you want.

    For myself, I gave halo PC and CE its own wine folder, so a lot of my own shortcuts and commands begin with:
    env WINEARCH=win32 WINEPREFIX=~/wines/haloce/ <commands>

    ( pretend that I am putting this code at the beginning of all of my wine and winetricks commands. On EVERY one of these guides below. )



    Halo PC Setup & Halo CE Setup & HEKsetup:
    Halo's setups both require a CD-key verification that normally fails on wine//linux. When you try to enter your key, you are met something along the lines of: "PidGin.dll had a problem"

    Just add mfc42 to your wine:
    winetricks mfc42

    Halo's installers should both get past CD-key verification now.

    As a bonus, add msxml4 to your wine as well:
    winetricks msxml4

    This should make HaloPC and HaloCE's ingame text-chat work, since it uses that.



    OpenSauce installer:
    For OpenSauce, the installer won't even work at all unless you have Dot Net framework 4.0. It's also an MSI installer, so it has to be called a certain way or it won't launch. Wine has a separate command that specifically launches .msi files.

    Add Microsoft .NET 4.0 to your wine:
    winetricks -q dotnet40

    The -q is optional, it's just there if you want to install dotnet40 quietly.
    If dotnet40 is installed properly, the OpenSauce installer should recognize halo and install properly.

    And I guess you've probably tried to run the OpenSauce installer using wine, only for wine to tell you that it doesn't know what a .msi is? Use this instead:
    msiexec -i <opensauce_installer.msi here>


    Once that is done, you have to mess with winecfg to get halo to use the opensauce plugin: Add dinput8 to the Libraries list as Native,Builtin.
    winecfg



    (I couldn't get halo working with OpenSauce, for me: DirectInput simply fails to initialize. But if this step works for you, good for you! )


    HAC2 and Chimera:
    These depend on Visual C++ Runtime 2010 of course. They've always required this even on windows. So of course they're needed on linux as well, otherwise HAC2 and chimera simply won't run.

    add vcrun2010 to your wine
    winetricks vcrun2010

    Drop HAC2 and Chimera into the controls folder like you'd normally do.





    #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### ####


    #### #### #### #### #### #### #### ####
    TRICKS FOR MAKING SHORTCUTS AND LAUNCHERS
    #### #### #### #### #### #### #### ####
    For the Desktop and for Steam

    #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### #### ####

    One of the minor annoyances with making shorcuts for wine programs under linux is that a lot of Halo's content creation tools require that they be launched from a specific folder to work . .. . . at all. ..
    But launchers in linux usually only have a <command> field, not a separate <target> and <location> field like windows shortcuts do. So you have to resort to some tricks to make launchers for the HEK.

    OH, AND STEAM.


    Making desktop shortcuts:

    Once again, assume I gave halo PC and CE its own wine folder, so a lot of my own shortcuts and commands begin with:
    env WINEARCH=win32 WINEPREFIX=~/wines/haloce/ <commands>

    ( pretend that I am putting this code at the beginning of all of these commands. ) For simplicity. xD

    The first two offenders of the "needs to be launched from its original location" rule are Guerilla and Sapien(and OS_Guerilla and OS_.... you get the idea).
    For these two programs, you'll want to use the start command. Pretend that it's an "extra hop".

    To set a working directory, you'd use it like so:
    ( start /d "<location>" "<target>" )
    for example, sapien:
    ( wine start /d "<path-to-haloce>" "sapien.exe" )

    My own personal launcher codes for guerilla and sapien go like this:
    env WINEARCH=win32 WINEPREFIX="~/wines/haloce" wine start /d "~/wines/haloce/drive_c/Program Files/Microsoft Games/Halo Custom Edition/" "sapien.exe"

    Modify it for yourself as you see fit.

    For TOOL, OS_TOOL, HALODED, or HALOCEDED this is a bit different. You need a command line to access these because wine can't really use them effectively from a naked terminal. It needs that extra layer of windows abstraction, otherwise they garble the terminal and become unusable.

    Fortunately, making a shortcut for wine's command prompt is easy. It's setting the working directory that makes it more convenient though. Who WANTS to navigate to the halo folder every single time they open CMD? Not me.

    To set a working directory for wineconsole, you just sort of "tell" it to change to a certain directory when you first launch it. Like so:
    ( wineconsole cmd /K "cd /d <path-to-haloce>" )
    For this, we use cmd as an 'extra hop'. Wineconsole calls cmd and passes /K. This tells cmd to run whatever is after the /K as a command

    My own personal launcher code for a Halo Custom Edition commandline is like this:
    env WINEARCH=win32 WINEPREFIX="~/wines/haloce" wineconsole cmd /K "cd /d C:\Program Files\Microsoft Games\Halo Custom Edition"

    Modify it for yourself as you see fit.


    Making STEAM shortcuts:

    Luckily, steam DOES use the windows'eqsue <target> <location> shortcut format.
    Just have an open folder to HaloPC or Halo Custom Edition ready.
    For steam, simply make a non-steam shortcut to the first program you find(because it's quick and lazy). Then go into its properties.

    For <target> you put something like this:
    env <WINEARCH> <WINEPREFIX> wine <programname.exe>

    For <location> you copy and paste the Halo install folder's location.
    You can set things like -window -console -devmode -WHATEVER in the SET LAUNCH OPTIONS section in the steam shortcut. They work fine.


    Launcher arguments:

    Maybe you want to launch halo with a console, or run multiple dedicated servers with their own profile locations?
    Just put the dashed '-arguments' at the VERY end of the launcher <command>, no quotation marks or anything.
    In steam, put them in the SET LAUNCH OPTIONS section of the launcher properties.


    #### #### #### #### #### #### #### ####
    LAST MINUTE NOTES
    #### #### #### #### #### #### #### ####

    Depending on your linux distro. Wine might not take too kindly to 'lazy marks' in your directories so if you use tildae( ~ ) marks in your commands, ergo: " ~/<folder> " but nothing seems to launch: Try replacing your tildas with full paths instead.

    Edited by OrangeJuice on Aug 31, 2019 at 07:47 PM


  • cippozzo
    Joined: May 7, 2013

    "I... I am a monument to all your sins."


    Posted: Mar 13, 2017 06:56 AM    Msg. 2 of 21       
    Oh thanks I tried installing Hac2 but it fails, what about open sauce? the installer doesn't work and copying the files from another installation doesn't work.


    Banshee64
    Joined: Dec 4, 2012

    oify


    Posted: Mar 13, 2017 11:08 AM    Msg. 3 of 21       
    cool stuff


    Super Flanker
    Joined: Oct 5, 2012

    The length of your life depends on my aim.


    Posted: Mar 13, 2017 01:39 PM    Msg. 4 of 21       
    Quote: --- Original message by: OrangeJuice

    some things you'll need:
  • wine
  • winetricks
    (to run)
  • winetricks mfc42 //Do this BEFORE installing your own mfc42.dll
  • winetricks vcrun6 //Needed for Halo
  • winetricks msxml4 //Needed for Halo's chat
  • winetricks vcrun2010 //Needed for HAC2
    (and also)
  • A copy of WINDOWS XP's mfc42.dll // ^ Needed to get past the PidGen.dll//CD-Key authorization for halo installers(no others will work from what I've tested, 32bit, 64bit, or otherwise)



  • I got this far before my inner me thought linux sux.


    OrangeJuice
    Joined: Jan 29, 2009

    new content isn't a mod. hhtmods are mods.


    Posted: Mar 13, 2017 04:12 PM    Msg. 5 of 21       
    Yeah it does. Do still get bored once every two or so years and install it just to see what's different.

    . Still a piece of junk terminal-OS that isn't ready for the desktop. .

    Shoot, at least I made halo work


    The Master
    Joined: Aug 8, 2014


    Posted: Mar 13, 2017 04:57 PM    Msg. 6 of 21       
    Linux sux dix, but nice job nonetheless


    OrangeJuice
    Joined: Jan 29, 2009

    new content isn't a mod. hhtmods are mods.


    Posted: Mar 13, 2017 05:45 PM    Msg. 7 of 21       
    I'll stick around for a little while longer.

    I'm trying to see what all is possible when it comes to actual CONTENT CREATION in linux. For halo.

    There's linux native Krita and linux native Blender. So that's .gbxmodels and texturing. There's also a native linux Microsoft Visual Studio Code.


    Let's see what else there is....

    Edited by OrangeJuice on Mar 13, 2017 at 05:46 PM

    EDIT: I'll try 3dsmax7 now since there's a russian vid of it working(of course with no explanation of how they got it working... idiotic showing off of things)
    Edited by OrangeJuice on Mar 13, 2017 at 06:05 PM


    cippozzo
    Joined: May 7, 2013

    "I... I am a monument to all your sins."


    Posted: Mar 13, 2017 06:07 PM    Msg. 8 of 21       
    Quote: --- Original message by: OrangeJuice

    I'll stick around for a little while longer.

    I'm trying to see what all is possible when it comes to actual CONTENT CREATION in linux. For halo.

    There's linux native Krita and linux native Blender. So that's .gbxmodels and texturing. There's also a native linux Microsoft Visual Studio Code.


    Let's see what else there is....
    Edited by OrangeJuice on Mar 13, 2017 at 05:46 PM

    Vscode is just chromium built with a fancy interface, in winzoz too. BTW seriously, linux rulez when programming comes.
    sudo apt-get install build-essentials


    OrangeJuice
    Joined: Jan 29, 2009

    new content isn't a mod. hhtmods are mods.


    Posted: Mar 13, 2017 07:01 PM    Msg. 9 of 21       
    3DSmax 7 worked perfectly !

    (luckily 3dsmax7 is really simple. Its installer is just a self-extracting exe that simply registers itself afterwards. Yay.)

    EDIT: 3dsmax7 has a lot of documented fixes: WineDB 3dsmax 7.x
    Edited by OrangeJuice on Mar 13, 2017 at 07:09 PM

    Just put the blitzkrieg plugin in /Plugins instead of /Stdplugs
    and put the dll files in syswow64 instead of system32
    Edited by OrangeJuice on Mar 13, 2017 at 07:16 PM
    -
    -
    -
    EDIT:

    Now I'm trying to get OpenSauce to work.
    First I tried getting its dependencies and stuff. Like visual c++ 2010, and .NET 4.0. and even mscore dll.

    Its installer just flat-out doesn't work in linux

    So I popped on over to windows, and extracted the MSI, which gave me most of its install files. BUT ! ! Not OS_guerilla or OS_sapien and all that good stuff. So I decided to arbitrarily copy those install files from my windows install.

    ... DIDN'T WORK. Halo behaves as if nothing is different, no OS PP commands, no F7 menu, no OS version number. Nothing.

    I don't think OpenSauce'll work unless there's some way to inject it into haloce. Which is supposedly nearly impossible because of how Linux does file handling. period.

    Errr..... Can someone give me a modded haloce.exe with the opensauce permanently applied to it ?
    Edited by OrangeJuice on Mar 13, 2017 at 11:10 PM

    For what it's worth. The HEK tools work perfectly because they're permanently modded with OS. I just need a modded haloce that can run opensauce without needing a dinput8.dll next to it
    Edited by OrangeJuice on Mar 14, 2017 at 12:33 AM


    cippozzo
    Joined: May 7, 2013

    "I... I am a monument to all your sins."


    Posted: Mar 14, 2017 02:53 AM    Msg. 10 of 21       
    https://bitbucket.org/KornnerStudios/opensauce-release/src/ce9fd5241f65e90550f5dcd5f6b97b240afcdcde/BlamLib/OpenSauceIDE/CheApe/?at=default

    Why not patch haloce.exe in haloce_os.exe?
    EDIT:
    had it running, missing CrashReportXXXX.dll (that's nicely within the msi)
    Thus cannot get SauceUI working, HUD resize properly, os' commands working as I screw up gravity
    didn't tried any yelos.


    Edited by cippozzo on Mar 14, 2017 at 03:52 AM


    OrangeJuice
    Joined: Jan 29, 2009

    new content isn't a mod. hhtmods are mods.


    Posted: Mar 14, 2017 06:45 AM    Msg. 11 of 21       
    How?

    (P.S. I haven't used linux as an OS for more than a few hours at a time since like ...a decade)


    cippozzo
    Joined: May 7, 2013

    "I... I am a monument to all your sins."


    Posted: Mar 14, 2017 10:11 AM    Msg. 12 of 21       
    It needs a dll called CrashReportXXXX.dll, where X is that i do not know what number is, though just start halo ce from the terminal by wine haloce.exe and it says dinput8.dll misses a dependency. It's shipped with OS installer, so you could pick that dll and drag over halo's dir.
    Then it works.
    PEPPERONI


    Super Flanker
    Joined: Oct 5, 2012

    The length of your life depends on my aim.


    Posted: Mar 14, 2017 02:05 PM    Msg. 13 of 21       
    Quote: --- Original message by: cippozzo
    PEPPERONI


    Ur not il duce.....


    cippozzo
    Joined: May 7, 2013

    "I... I am a monument to all your sins."


    Posted: Mar 14, 2017 02:19 PM    Msg. 14 of 21       
    Quote: --- Original message by: Super Flanker
    Quote: --- Original message by: cippozzo
    PEPPERONI


    Ur not il duce.....

    I'm the holy messiah


    OrangeJuice
    Joined: Jan 29, 2009

    new content isn't a mod. hhtmods are mods.


    Posted: Mar 15, 2017 11:44 AM    Msg. 15 of 21       
    .... You're gonna love this.

    This person's HowTo can get you a fully-functioning OpenSauce in linux with the F7 menu.

    Man, the halo community does a bad job of fragmenting. Wellp. problem solved #TopicNotNeeded
    Edited by OrangeJuice on Mar 15, 2017 at 11:47 AM


    Super Flanker
    Joined: Oct 5, 2012

    The length of your life depends on my aim.


    Posted: Mar 15, 2017 12:09 PM    Msg. 16 of 21       
    Quote: --- Original message by: OrangeJuice

    .... You're gonna love this.

    This person's HowTo can get you a fully-functioning OpenSauce in linux with the F7 menu.

    Man, the halo community does a bad job of fragmenting.
    Edited by OrangeJuice on Mar 15, 2017 at 11:47 AM


    Well in the user's defence he did post his tut in a moderately inhabited HCE related place.


    cippozzo
    Joined: May 7, 2013

    "I... I am a monument to all your sins."


    Posted: Mar 15, 2017 01:07 PM    Msg. 17 of 21       
    Orange, so now we have ALL the pieces of the puzzle. Update the guide with opensauce support.
    Linux rulez.


    OrangeJuice
    Joined: Jan 29, 2009

    new content isn't a mod. hhtmods are mods.


    Posted: Aug 31, 2019 04:58 PM    Msg. 18 of 21       
    Updated the guide for 2019.

    And I added some installation tips. Are they helpful at all?

    I think it would be lovely if some genius came along and made like . . an installer or appimage that does all of this automatically and installs halo for you. Once you have everything, halo is actually pretty easy to get working. But making an installer for linux that just does it for you automatically would be the best gift ever

    Until then, I still hate linux. And like usual, I'm not keeping it installed, I just wanted to update this guide since I left it kind of unfinished, sorry for leaving it unfinished xD

    Edited by OrangeJuice on Aug 31, 2019 at 05:22 PM
    Edited by OrangeJuice on Aug 31, 2019 at 05:23 PM


    msalerno
    Joined: Jan 2, 2013


    Posted: Sep 1, 2019 12:59 PM    Msg. 19 of 21       
    Quote: --- Original message by: cippozzo
    Oh thanks I tried installing Hac2 but it fails, what about open sauce? the installer doesn't work and copying the files from another installation doesn't work.


    Are you trying to install the "new" hac2 version 2.3 or the "old" version 2.2 ?


    OrangeJuice
    Joined: Jan 29, 2009

    new content isn't a mod. hhtmods are mods.


    Posted: Oct 27, 2019 03:26 PM    Msg. 20 of 21       
    I guess my only outstanding goals for now is performance, and opensauce

    OS_Sapien simply isn't working at more than 1FPS on any attempts I've done so far

    Trying to launch haloce with opensauce will just fail because of dinput8 not working

    And Halo Custom Edition because of the huge performance drop. Every wine setup you can think of, silenced debugging, Even with a 64-bit winearch I simply couldn't get more than 40FPS out of bigass(when standing at the entrance of the two bases) when this computer can manage 200 on bigass with no dips on windows. This performance drop extends to other maps as well, even stockmaps


    Any tips?
    Edited by OrangeJuice on Oct 27, 2019 at 03:27 PM
    Edited by OrangeJuice on Oct 27, 2019 at 03:27 PM


    msalerno
    Joined: Jan 2, 2013


    Posted: Oct 28, 2019 09:53 AM    Msg. 21 of 21       
    Quote:
    Any tips?


    Try VirtualBox with windows installed in it? ;)

     

     
    Previous Older Thread    Next newer Thread







    Time: Wed November 20, 2019 11:17 AM 203 ms.
    A Halo Maps Website