The Ur-Quan Masters Home Page Welcome, Guest. Please login or register.
Did you miss your activation email?
September 21, 2018, 09:52:03 pm
Home Help Search Login Register
News: Yes. We have good news! Well, that is to say, we have no news. But it is good news.

+  The Ur-Quan Masters Discussion Forum
|-+  The Ur-Quan Masters Re-Release
| |-+  General Discussion (Moderator: Death 999)
| | |-+  The MegaMod 0.8.0 has finally arrived!
« previous next »
Pages: 1 ... 6 7 [8] 9 10 11 Print
Author Topic: The MegaMod 0.8.0 has finally arrived!  (Read 4914 times)
darklord42
*Many bubbles*
***
Offline Offline

Posts: 191



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #105 on: April 15, 2018, 03:39:34 am »

I have a question.  I know the game is suppose to be compiled for 32 bit, but I have never noticed any issues with compiling it 64bit on my linux machine.  Nor have I noticed any issues with doing so right off that bat.   Are there any reasons not to?

If 32 bit is the recommendation what is the best way to do so on 64 bit linux?

I tried going to config_proginfo_build and setting cflags, cxxflags, and ldflags to -m32.  Only at the linking stage it fails to link the 32bit libraries...
/usr/bin/ld: skipping incompatible /usr/lib/i386-linux-gnu/libSDL.so when searching for -lSDL

I already have gcc-multilib g++-multilib and libc6-dev-i386

It's just very odd...
« Last Edit: April 15, 2018, 06:04:30 am by darklord42 » Logged
Serosis
Enlightened
*****
Offline Offline

Gender: Male
Posts: 1249



View Profile WWW
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #106 on: April 15, 2018, 08:46:25 am »

As far as I know UQM itself is locked into 32-bit as far as how things are coded.

I tried looking into upgrading the code for 64-bit but it's not as simple as pointing a 64-bit compiler at it.
If an actual developer (I.E. Serge or Mike Martin) wander through here they could probably shed some light on what would be necessary.

Heck, I don't even know if the necessary libraries are fully 64-bit compatible.
I had to personally compile SDL 1.2.15 in Visual Studio 2017 so that UQM could build in Visual Studio 2017.
Same with the latest zlib.
It's getting to the point where UQM might fall behind in OS compatibility soon unless we can get some knowledgeable devs thrown at the project to update the code
for more modern systems.
Logged

The artist formerly known as Kohr-Ah Death.

Get your MegaMod HERE
darklord42
*Many bubbles*
***
Offline Offline

Posts: 191



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #107 on: April 15, 2018, 02:48:34 pm »

but it's not as simple as pointing a 64-bit compiler at it.

Really?   I always thought that was Exactly what it took!   If it compiles, then the outputting binary is 64bit.  The OS certainly seems to think so, which will be good enough for apple down the road:

Quote
/home/joshuapettus/Downloads/UQM-MegaMod-0.8.0-MegaMod_Rev.6/UrQuanMasters: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, interpreter /lib64/ld-linux-x86-64.so.2, for GNU/Linux 3.2.0, BuildID[sha1]=31a297b1ed7857b5a82a9bbf185632a7ce745be2, not stripped

 I'm really not sure what technicality you are referring?  Does the outputting binary not address more then 4 gigs of RAM?  (or 1 something in the case of windows). Heck, I couldn't even run a 32bit binary in 64bit linux without some finagling.  That's never default.  You cant link 32bit libraries to a 64bit binary.  It can't be done.  It would fail at the linking process which the opposite of which is what I'm getting now.  It's trying to link 64bit libraries on the 32bit binary I asked for.  Otherwise it would successfully build the 64bit binary.

Quote
Heck, I don't even know if the necessary libraries are fully 64-bit compatible.
Those are all standard libraries and It's not hard to get them for 64bit for linux and osx.  Every distro package manager has them.  You should look into chocolaty for windows.  I would expect to find them there.

« Last Edit: April 15, 2018, 03:33:19 pm by darklord42 » Logged
Elestan
*Smell* controller
****
Offline Offline

Posts: 377



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #108 on: April 15, 2018, 05:38:28 pm »

but it's not as simple as pointing a 64-bit compiler at it.

Really?   I always thought that was Exactly what it took!   If it compiles, then the outputting binary is 64bit.

Porting to 64-bit isn't rocket science,but it's not as easy as just compiling it with a 64-bit compiler.  The code is probably making assumptions about the size of integers and/or pointers being 32 bits, so even if it compiles, it's likely to crash or have other new bugs. 

Quote
Quote
Heck, I don't even know if the necessary libraries are fully 64-bit compatible.
Those are all standard libraries and It's not hard to get them for 64bit for linux and osx.  Every distro package manager has them.  You should look into chocolaty for windows.  I would expect to find them there.

The problem is that someone will have to go get 64-bit versions of all of the 3rd-party libraries UQM needs on three different platforms, modify the build scripts to use them, and debug the result.  That's not necessarily hard, but it's a lot of grunt work, And if any of the 3P libraries aren't available in 64-bit, you've got a bigger problem.  For example, I'm not sure if there's a version of SDL 1.2 for 64-bit OSX.  If there isn't, then UQM would have to port to SDL 2.x, which has a different API, and would require rewriting a bunch of the code.  And then you have to deal with any incompatibilities in the new SDL's dependencies, and keep working your way up the chain until you find a new set of compatible versions.

I've done ports like this, and they're usually a pain in the tail, especially on multiplatform products with many external dependencies.
Logged
darklord42
*Many bubbles*
***
Offline Offline

Posts: 191



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #109 on: April 15, 2018, 05:53:50 pm »

As I said, those are all standard libraries.  Finding 64bit versions isn't hard.  

For instance If you download the SDL1.2 framework right off of their page, you will find it contains both the 64bit and 32bit libraries included right in it.  (The advantage of frameworks over dylibs is that they can contain multiple versions of the library in a single package).  Remember apple has been a 64bit OS for well over 10 years.  Or if if you prefer dylib versions, you can install macports and do "sudo port install libsdl" *or whatever the package name*  then "+universal" if you want 32 bit versions as well or leave "+universal" out and it will download 64bit versions.

There are plenty of sdl 1.2 apps that are 64bit


As for any crashes in the code with a 64bit binary of UQM mega mod.  I haven't had any issues, and I've played most way through the game.  Which was why I was wondering...  You're right, there can be such issues as integer assumtions. Take DosBox for example which I know their dynamic core was written in assembly for a 32bit system, and doesn't make the translation to 64bit very well. But in this case,  I think you are way over-thinking this.  SDL-1.2 is pretty tried and true.
« Last Edit: April 15, 2018, 06:10:33 pm by darklord42 » Logged
Elestan
*Smell* controller
****
Offline Offline

Posts: 377



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #110 on: April 15, 2018, 07:39:00 pm »

As I said, those are all standard libraries.  Finding 64bit versions isn't hard.
[...]
As for any crashes in the code with a 64bit binary of UQM mega mod.  I haven't had any issues, and I've played most way through the game.

Glad to hear it...I was worried that there would be a ton of little crashes and glitches.  Would you like to take a stab at adjusting the build scripts to support a 32 or 64 bit configuration selection, and sending a pull request?  I'm sure Serosis would be greatly appreciative.
Logged
darklord42
*Many bubbles*
***
Offline Offline

Posts: 191



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #111 on: April 15, 2018, 08:17:47 pm »

There may be certain edge case scenarios where there is a crash I suppose,  but then again, how is that different from any other day. Smiley

As for build scripts.  I didn't have to do anything to make it do 64bit.  That's default on the 64bit system.   It's trying to get it to do 32bit that's hard, and I hadn't figured out if you read my first post on the top of the page.

There is this nice patch that lets you choose the compiler with the $CC and $CXX environment variables, that I don't think is a bad idea...

http://forum.uqm.stack.nl/index.php?topic=5797.0
« Last Edit: April 15, 2018, 08:19:48 pm by darklord42 » Logged
Serosis
Enlightened
*****
Offline Offline

Gender: Male
Posts: 1249



View Profile WWW
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #112 on: April 15, 2018, 10:05:50 pm »

As for build scripts.  I didn't have to do anything to make it do 64bit.  That's default on the 64bit system.

Ok, now do it on Windows and post a tutorial.

I've said time and time again that I'm not an actual developer.
I do not really know what I'm doing, I poke around until I see patterns, shift them, then check the results.
Logged

The artist formerly known as Kohr-Ah Death.

Get your MegaMod HERE
darklord42
*Many bubbles*
***
Offline Offline

Posts: 191



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #113 on: April 16, 2018, 01:29:45 am »

Well you are in good company.  Neither am I.  I'm a network engineer by trade, but like you, I love to tinker.

Anyway I'm not sure how MS Visual Studio works.  I never had the money to get it.   Gun to my head I would try cygwin and install the mingw compiler, then use the cygwin installer to install the 64bit sdl , sdl image, zlib, and ogg vorbis libraries.  Then I would try to compile.  No idea if it would work though. Though I do remember seeing mingw mentioned in the build files.  I use to have a mingw setup on my mac which could compile windows binaries. I'm sure I could do the same on this linux box should I find the time.
Logged
Serosis
Enlightened
*****
Offline Offline

Gender: Male
Posts: 1249



View Profile WWW
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #114 on: April 16, 2018, 02:33:49 am »

Well you are in good company.  Neither am I.  I'm a network engineer by trade, but like you, I love to tinker.

Anyway I'm not sure how MS Visual Studio works.  I never had the money to get it.

Visual Studio has had free versions (Visual Studio Express) since 2005.
But that's neither here nor there.

When I try to build in MinGW (at least in Windows 10) it takes forever.
It's so slow that it would take an hour, I believe, to completely compile.

No idea what's happening there but that's why I haven't been compiling that way.
That and the IDE Visual Studio gives me is nice to work with.
Logged

The artist formerly known as Kohr-Ah Death.

Get your MegaMod HERE
PRH
*Many bubbles*
***
Offline Offline

Gender: Male
Posts: 114



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #115 on: April 20, 2018, 01:40:41 pm »

I've found two bugs in the MegaMod so far.

First, when an alien race's sphere of influence is partially outside the map, the race's name is displayed outside its sphere of influence, rather than inside it. Like this: https://b8.ru.icdn.ru/p/prhmro/upic2.jpg
Second, the game randomly crashes when I'm talking to the Orz.
« Last Edit: April 20, 2018, 04:18:23 pm by PRH » Logged
Serosis
Enlightened
*****
Offline Offline

Gender: Male
Posts: 1249



View Profile WWW
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #116 on: April 20, 2018, 05:29:28 pm »

I've found two bugs in the MegaMod so far.

First, when an alien race's sphere of influence is partially outside the map, the race's name is displayed outside its sphere of influence, rather than inside it. Like this: https://b8.ru.icdn.ru/p/prhmro/upic2.jpg
Second, the game randomly crashes when I'm talking to the Orz.

Thanks!

Looking into it now.

_____

UPDATE:

I've fixed the text being properly centered in the SOI.

Haven't had the Orz crash on me yet but I'll keep trying.

UPDATE2:

I've also made it so Soul Reaver's Syreen Voice Fix's dialog happens if voices are turned off.
To mimic the PC version.

(When talking about the egg-case only)
« Last Edit: April 20, 2018, 11:23:46 pm by Serosis » Logged

The artist formerly known as Kohr-Ah Death.

Get your MegaMod HERE
PRH
*Many bubbles*
***
Offline Offline

Gender: Male
Posts: 114



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #117 on: April 20, 2018, 11:23:29 pm »

In the version I have, the game consistently crashes when the Orz says the line labeled GENERAL_INFO_ALLY_3 in the dialogue file, and then I review it in text-only mode. When I first met the Orz, the game also crashed just as their fleet came into contact with my ship.
Logged
Serosis
Enlightened
*****
Offline Offline

Gender: Male
Posts: 1249



View Profile WWW
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #118 on: April 20, 2018, 11:24:43 pm »

In the version I have, the game consistently crashes when the Orz says the line labeled GENERAL_INFO_ALLY_3 in the dialogue file, and then I review it in text-only mode. When I first met the Orz, the game also crashed just as their fleet came into contact with my ship.

Oh that's perfect, thanks for pointing out the actual dialogue, that helps immensely.
When I get back home I'll take a long, hard look at it with a debugger.
Logged

The artist formerly known as Kohr-Ah Death.

Get your MegaMod HERE
PRH
*Many bubbles*
***
Offline Offline

Gender: Male
Posts: 114



View Profile
Re: The MegaMod 0.8.0 has finally arrived!
« Reply #119 on: April 21, 2018, 12:00:06 am »

Apparently the game crashes whenever the Orz say anything that is longer than one page (not just GENERAL_INFO_ALLY_3), and I review the text. This does not happen in conversations with other races (e.g., the Melnorme).
Logged
Pages: 1 ... 6 7 [8] 9 10 11 Print 
« previous next »
Jump to:  


Login with username, password and session length

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2015, Simple Machines Valid XHTML 1.0! Valid CSS!