jcsnider Posted April 5, 2016 Share Posted April 5, 2016 How To Run The Intersect Server on a Linux Machine Date: April 5th 2016 Guide Written During Alpha 0.0.0.8 Summary/Notes/Disclaimers/Etc: All version of Linux are different. In this guide I am going to be using CentOS with a user interface. Some of the commands I reference maybe different for other flavors of Linux so feel free to ask questions below if you need help with your flavor, but also be ready to Google what the equalivant of yum is in Ubuntu for example. (Hint, its apt-get) Table Of Contents 1. Installing Mono 1.1 On CentOS 1.2 On Ubuntu 2. Running the server PalDiaray, lol123xb and Alexoune001 3 Link to comment Share on other sites More sharing options...
jcsnider Posted April 6, 2016 Author Share Posted April 6, 2016 1. Installing Mono Mono is a massive library and getting it installed on your machine maybe very easy or very difficult. I cannot upkeep a full in-depth guide here but others do all over the net. I suggest you skip this step and find instructions online on how to get mono working for you and then come back. 1.1 On CentOS I started to do this and it became very complex, very fast. There are several ways to achieve a mono-installation and if you your installation of CentOS is out of date it comes even trickier. So I am going to leave this step up to you. You might be able to get mono installed by using yum (yum install mono-complete) but you may have to download and build it from the source. Regardless I recommend you start here and then Google your way to a successful Mono installation. For reference I ended up following these instructions by arootbeer in the StackOverflow thread to get Mono working on my machine. 1.2 On Ubuntu If you are in a GUI interface, start by opening whatever terminal application you use. In your terminal application enter the following command: apt-get install mono-complete Enter your password if requested to do so. Remember, you must be root or have power to install packages on this machine. All time for everything to install and you are done! Back to Top izZiManiA and PalDiaray 2 Link to comment Share on other sites More sharing options...
jcsnider Posted April 6, 2016 Author Share Posted April 6, 2016 2. Running The Server For most flavors of Linux this step is going to be exactly the same. Make sure you have downloaded and extracted the Intersect server somewhere on your machine (Yes, you use the same server on Linux that you do on Windows so go download that one!). Open terminal and navigate to where ever the Intersect Server.exe file is located and run the following command: LD_LIBRARY_PATH=. mono "Intersect Server.exe" After you hit enter, with a little luck you should see the server start to load! That's it, you're now hosting a Intersect game on Linux! Back to Top WhiteAssassins, Diefool and PalDiaray 3 Link to comment Share on other sites More sharing options...
Teppy Posted April 25, 2017 Share Posted April 25, 2017 EDIT: Fixed it! Link to comment Share on other sites More sharing options...
Mir0shi Posted November 28, 2018 Share Posted November 28, 2018 How am i supposed to download Intersect Server.exe to Ubuntu through terminal? TwT Link to comment Share on other sites More sharing options...
jcsnider Posted November 29, 2018 Author Share Posted November 29, 2018 'wget https://www.ascensiongamedev.com/files/file/3-intersect-engine/?do=download' Mir0shi 1 Link to comment Share on other sites More sharing options...
Worldofjimmy Posted January 19, 2019 Share Posted January 19, 2019 I tester this for Mac OS and it works there too! 1. Install Mono 2. Use terminal and navigate to the folder containing Intersect Server.exe Eg. ”cd /Desktop/Intersect Engine 5.1/Server/” Once you are inside that folder enter the following command mono ”Intersect Server.exe” 3. This works for the Client too jcsnider 1 Link to comment Share on other sites More sharing options...
Patracio Posted May 26, 2019 Share Posted May 26, 2019 Hi Im trying to run on Ubuntu, but i got this error: Spoiler 2019-05-26 21:50:25.898 [Error] Received unhandled exception from . 2019-05-26 21:50:25.910 [Error] Message: The type initializer for 'Microsoft.Data.Sqlite.SqliteConnection' threw an exception. 2019-05-26 21:50:25.911 [Error] Stack Trace: at Microsoft.EntityFrameworkCore.Migrations.HistoryRepository.Exists () [0x0000b] in <1b06b8e99d984506b89b3e4ae11831eb>:0 at Microsoft.EntityFrameworkCore.Migrations.Internal.Migrator.Migrate (System.String targetMigration) [0x00012] in <1b06b8e99d984506b89b3e4ae11831eb>:0 at Microsoft.EntityFrameworkCore.RelationalDatabaseFacadeExtensions.Migrate (Microsoft.EntityFrameworkCore.Infrastructure.DatabaseFacade databaseFacade) [0x00010] in <1b06b8e99d984506b89b3e4ae11831eb>:0 at Intersect.Server.LegacyDatabase.InitDatabase () [0x00093] in <c02d93628e3443c8a5c4dd7ccd5a551c>:0 at Intersect.Server.ServerStart.Start (System.String[] args) [0x00184] in <c02d93628e3443c8a5c4dd7ccd5a551c>:0 at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&) at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00038] in <8f2c484307284b51944a1a13a14c0266>:0 2019-05-26 21:50:25.912 [Error] Stack Trace: at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00053] in <8f2c484307284b51944a1a13a14c0266>:0 at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <8f2c484307284b51944a1a13a14c0266>:0 at Microsoft.Data.Sqlite.Utilities.BundleInitializer.Initialize () [0x0002f] in <56cfa09aae23467e945f1a64a1f893bb>:0 at Microsoft.Data.Sqlite.SqliteConnection..cctor () [0x00000] in <56cfa09aae23467e945f1a64a1f893bb>:0 2019-05-26 21:50:25.912 [Error] Time: 5/26/2019 9:50:25 PM -------------------------------------------------------------------------------- 2019-05-26 21:50:25.912 [Error] Inner Exception? 2019-05-26 21:50:25.915 [Error] Message: Exception has been thrown by the target of an invocation. 2019-05-26 21:50:25.916 [Error] Stack Trace: at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00053] in <8f2c484307284b51944a1a13a14c0266>:0 at System.Reflection.MethodBase.Invoke (System.Object obj, System.Object[] parameters) [0x00000] in <8f2c484307284b51944a1a13a14c0266>:0 at Microsoft.Data.Sqlite.Utilities.BundleInitializer.Initialize () [0x0002f] in <56cfa09aae23467e945f1a64a1f893bb>:0 at Microsoft.Data.Sqlite.SqliteConnection..cctor () [0x00000] in <56cfa09aae23467e945f1a64a1f893bb>:0 2019-05-26 21:50:25.917 [Error] Stack Trace: at (wrapper managed-to-native) SQLitePCL.SQLite3Provider_e_sqlite3+NativeMethods:sqlite3_libversion_number () at SQLitePCL.SQLite3Provider_e_sqlite3.SQLitePCL.ISQLite3Provider.sqlite3_libversion_number () [0x00000] in <94e90f2e2a1e4f8983b76383f64574ce>:0 at SQLitePCL.raw.SetProvider (SQLitePCL.ISQLite3Provider imp) [0x00008] in <724f9a22df504a05b4645fb690570b7a>:0 at SQLitePCL.Batteries_V2.Init () [0x00005] in <a13ad878b60c48a5be8c61d809c413bc>:0 at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&) at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00038] in <8f2c484307284b51944a1a13a14c0266>:0 2019-05-26 21:50:25.917 [Error] Time: 5/26/2019 9:50:25 PM -------------------------------------------------------------------------------- 2019-05-26 21:50:25.917 [Error] Inner Exception? Inner Exception? 2019-05-26 21:50:25.919 [Error] Message: e_sqlite3 2019-05-26 21:50:25.920 [Error] Stack Trace: at (wrapper managed-to-native) SQLitePCL.SQLite3Provider_e_sqlite3+NativeMethods:sqlite3_libversion_number () at SQLitePCL.SQLite3Provider_e_sqlite3.SQLitePCL.ISQLite3Provider.sqlite3_libversion_number () [0x00000] in <94e90f2e2a1e4f8983b76383f64574ce>:0 at SQLitePCL.raw.SetProvider (SQLitePCL.ISQLite3Provider imp) [0x00008] in <724f9a22df504a05b4645fb690570b7a>:0 at SQLitePCL.Batteries_V2.Init () [0x00005] in <a13ad878b60c48a5be8c61d809c413bc>:0 at (wrapper managed-to-native) System.Reflection.MonoMethod:InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&) at System.Reflection.MonoMethod.Invoke (System.Object obj, System.Reflection.BindingFlags invokeAttr, System.Reflection.Binder binder, System.Object[] parameters, System.Globalization.CultureInfo culture) [0x00038] in <8f2c484307284b51944a1a13a14c0266>:0 2019-05-26 21:50:25.920 [Error] Time: 5/26/2019 9:50:25 PM -------------------------------------------------------------------------------- Link to comment Share on other sites More sharing options...
XFallSeane Posted October 16, 2019 Share Posted October 16, 2019 Don't work on linux ! Link to comment Share on other sites More sharing options...
Smoot Posted October 17, 2019 Share Posted October 17, 2019 Works fine on Linux. Running it on Ubuntu right now with MySQL. Link to comment Share on other sites More sharing options...
TheKezStrel Posted February 10, 2020 Share Posted February 10, 2020 If you get a lot of error lines, always run from the directory the server is installed as a root user or as... sudo mono "Intersect Server.exe" Link to comment Share on other sites More sharing options...
jcsnider Posted February 10, 2020 Author Share Posted February 10, 2020 Make sure Mono is version 6.8+. After that you'll actually have to share the errors for us to help. Link to comment Share on other sites More sharing options...
Rales99 Posted August 10, 2020 Share Posted August 10, 2020 After closing putty, the server is closed. How do I fix this problem? Link to comment Share on other sites More sharing options...
wishy Posted August 10, 2020 Share Posted August 10, 2020 18 minutes ago, Rales99 said: After closing putty, the server is closed. How do I fix this problem? You can disown, nohup or screen I personally use screen, just press Alt + A, Alt + D to hide the terminal and type screen -r to call it back Link to comment Share on other sites More sharing options...
Gone Posted August 31, 2020 Share Posted August 31, 2020 Nice guide! hey guys, i'm new around here, i saw that in their github page they state that they do have Linux support. this guide is very useful for the server side indeed! but what about the client and editor? i went to the download page and it seems empty, nor i can find documentation about which repo to add and how to install the complete engine in a Linux distro enviorment, i have been working for a while with Godot in my Linux machine, and i wanted to move my project over to Intersec's Engine. Could anyone guide me on where's the documentation for Linux at? thanks! Link to comment Share on other sites More sharing options...
Tron Posted August 31, 2020 Share Posted August 31, 2020 4 minutes ago, PsychedCat said: Nice guide! hey guys, i'm new around here, i saw that in their github page they state that they do have Linux support. this guide is very useful for the server side indeed! but what about the client and editor? i went to the download page and it seems empty, nor i can find documentation about which repo to add and how to install the complete engine in a Linux distro enviorment, i have been working for a while with Godot in my Linux machine, and i wanted to move my project over to Intersec's Engine. Could anyone guide me on where's the documentation for Linux at? thanks! You should be able to use Wine to load up the client if you only have access to a Linux machine. I think Linux is by far superior for servers but I think if you have access to a Windows machine you should just do editing from there. Gone 1 Link to comment Share on other sites More sharing options...
Gone Posted August 31, 2020 Share Posted August 31, 2020 10 minutes ago, Scaly said: You should be able to use Wine to load up the client if you only have access to a Linux machine. I think Linux is by far superior for servers but I think if you have access to a Windows machine you should just do editing from there. Thanks for the quick answer! sadly i don't really like to work on windows for security reasons, i have always worked on Linux, since its more wise in terms of resource usage, security and privacy... i just realized about that small detail that requires me to use windows in order to run this interesting engine (DirectX)... so yeah, thanks for the support and everything, but i don't think that this will be the engine of my choose for now, i know that i could run and try the editor and client with wine, but that's a risk im not willing to take for several reasons over here. Wine does not sandbox any process its running within its libraries. When you run some .exe under Wine, that Windows apps can do anything your user can. Wine does not (and cannot) stop a Windows app directly of making syscalls, messing with your files, altering your startup scripts, or doing other nasty things to the Linux kernel (not saying that this engine is doing so, but the simple fact of having the wine system in Linux will open up several backdoors for undesired set of events..). Uhm.. so Yeah, i don't think that i will work around with this engine until there's complete support for Linux, very interesting project i gotta say tho! thanks for your answer, i was a bit lost around the forums earlier and i really needed this clarification! wishy 1 Link to comment Share on other sites More sharing options...
Cheshire Posted August 31, 2020 Share Posted August 31, 2020 56 minutes ago, PsychedCat said: so yeah, thanks for the support and everything, but i don't think that this will be the engine of my choose for now, i know that i could run and try the editor and client with wine Going to ignore everything else you've said, because frankly that really doesn't belong here. (And just makes me scratch my head) But, only the editor requires windows as it is. And unless that's completely rewritten that won't ever change. It's not DirectX causing the problem, there's methods of running that on Linux just fine. Same with .Net itself. But it simply uses some libraries and calls that Mono can't handle. Link to comment Share on other sites More sharing options...
jcsnider Posted August 31, 2020 Author Share Posted August 31, 2020 Also the client and server runs natively with Mono. No one should use Wine with Intersect. It won't make the editor work. Link to comment Share on other sites More sharing options...
Markchapman Posted September 2, 2020 Share Posted September 2, 2020 I'm not Linux savvy but I do have a raspberri pi that I run retropi on, can I use my raspberri pi 3b to run my server? Link to comment Share on other sites More sharing options...
Cheshire Posted September 2, 2020 Share Posted September 2, 2020 Assuming you can get mono to run on raspbian, it should work. If I recall the Pi is an ARM based system so your mileage on support there may vary. (A quick Google seems to suggest people did get mono to work, though not always without issues depending on what they tried to do, but that is a mono thing in general) Link to comment Share on other sites More sharing options...
Tron Posted September 2, 2020 Share Posted September 2, 2020 6 hours ago, Markchapman said: I'm not Linux savvy but I do have a raspberri pi that I run retropi on, can I use my raspberri pi 3b to run my server? Yes you can definitely do that. https://www.mono-project.com/download/stable/#download-lin-raspbian Run apt-get update, followed by a apt-cache search mono. Look for your distro and then run apt-get install <mono_distro>. Markchapman 1 Link to comment Share on other sites More sharing options...
Markchapman Posted September 3, 2020 Share Posted September 3, 2020 Thanks for the replies,, ill look into mono on raspian or see what other distros the b3 can support. This will take the load off my crap laptop, but there's only three of us playing anyways five max at different times. Thanks again this has probably been the best, low drama, supportive and helpful community for a hobby game developer. jcsnider 1 Link to comment Share on other sites More sharing options...
Jacques_Olivier Posted December 31, 2020 Share Posted December 31, 2020 Hi there, So i am trying to launch the server on a RaspBerry PI 3B+ I have a fresh install up to date of Rapbian. I also installed the last version of mono But i have some errors, look at the logs here :https://s3.us-east-2.amazonaws.com/ascensiongamedev/filehost/dd92b50c27326ee0ec207d359e1a8abc.txt Any ideas ? Link to comment Share on other sites More sharing options...
jcsnider Posted February 4, 2021 Author Share Posted February 4, 2021 On 12/31/2020 at 11:14 AM, Jacques_Olivier said: Hi there, So i am trying to launch the server on a RaspBerry PI 3B+ I have a fresh install up to date of Rapbian. I also installed the last version of mono But i have some errors, look at the logs here :https://s3.us-east-2.amazonaws.com/ascensiongamedev/filehost/dd92b50c27326ee0ec207d359e1a8abc.txt Any ideas ? Sorry for the super late reply, but we just worked this out ourselves. The launch command needs to be: Quote LD_LIBRARY_PATH=. mono "Intersect Server.exe" Without the LD_LIBRARY_PATH set it won't find the sqlite library the server extracts for some reason. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now