Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

64bit build issues #53

Closed
CubeTheThird opened this issue Mar 23, 2019 · 12 comments
Closed

64bit build issues #53

CubeTheThird opened this issue Mar 23, 2019 · 12 comments
Labels
bug

Comments

@CubeTheThird
Copy link

@CubeTheThird CubeTheThird commented Mar 23, 2019

Issues left before we can mark 64bit builds as stable

  • Save games are not compatible with 32bit builds
  • Swapping items in belt corrupt them
  • Moving gold converts it to a broken full mana potion
  • Number of scrolls is off by -2
@AJenbo

This comment has been minimized.

Copy link
Member

@AJenbo AJenbo commented Mar 23, 2019

You have compiled a 64bit build, currently they are not playable. Please see the readme on how to build a 32bit version on 64bit systems.

https://github.com/diasurgical/devilutionX/blob/master/README.md#building-deviltuionx-32-bit-on-64-bit-linux-multilib-platforms

Your MPQ is from EU/Mac/GoG and so should work excellently.

Glad you are excited about the project :)

@AJenbo AJenbo changed the title Game Crash 64bit build crashes Mar 23, 2019
@AJenbo AJenbo added the bug label Mar 23, 2019
@CubeTheThird

This comment has been minimized.

Copy link
Author

@CubeTheThird CubeTheThird commented Mar 23, 2019

Original post:
Started a new game, talked to the witch, and browsed her shop. The item listings were bizarre (many nameless 0 gold items with no requirements), and eventually scrolling through crashed the game. Follows are the logs generated, which I hope will be useful:

diablolog.txt

Also, the md5 of my diabdat.mpq file is 011bc6518e6166206231080a4440b373 if that is relevant.

I am running Arch Linux, and can provide package details upon request.

P.S. I got super excited the moment I discovered this project existed, and am astounded to see the amount of effort put into it thus far.


You are exactly right, and thankfully the AUR package just got updated to allow for multilib installs. The game seems to run normally now, as expected.

Also, interesting to see the MPQ has falling under that category, since this one was taken from the original game disc purchased in NA.

@AJenbo

This comment has been minimized.

Copy link
Member

@AJenbo AJenbo commented Mar 23, 2019

Interesting to hear that the mpq is from NA, probably they updated it at some point when having the produce more for the market.

Do you happen to know the date of the media?

@CubeTheThird

This comment has been minimized.

Copy link
Author

@CubeTheThird CubeTheThird commented Mar 23, 2019

Looking at the files in the ISO I made, the mpq itself is dated Dec. 4th 1997, however there are also newer items on the disc (most notably the patch) dated Aug. 29th 2001. I'll have to dig up the physical disc and case to find more details.

@AJenbo

This comment has been minimized.

Copy link
Member

@AJenbo AJenbo commented Apr 6, 2019

The 64bit builds are now much improved, the game is somewhat playable, known issues are:

  • DRLG_L3PlaceRndSet crashes the game when entering caves
  • Monsters and players using lightning causes the game to crash in MI_Lightctrl
  • Item data is scrambled, this causes items to initially be unequipped, stores sell random garbage (also true for pickups) and books and potions cannot be used
@AJenbo

This comment has been minimized.

Copy link
Member

@AJenbo AJenbo commented May 13, 2019

The game is now mostly playable in 64bit builds. I have updated the original description with the current known issues.

@AJenbo AJenbo changed the title 64bit build crashes 64bit build issues May 14, 2019
@AJenbo

This comment has been minimized.

Copy link
Member

@AJenbo AJenbo commented May 19, 2019

Just fixed the random crashes on startup, this has been a release blocker for 0.4.0 since the issue wasn't full understood, but it turned out to only affect 64bit builds so shoudn't actually have blocked releases.

@Khyota

This comment has been minimized.

Copy link

@Khyota Khyota commented May 23, 2019

In 64bit multiplayer, clicking New Game will cause the game to freeze after fading to black.

@AJenbo

This comment has been minimized.

Copy link
Member

@AJenbo AJenbo commented May 23, 2019

@Predelnik just cleaned up CheckInvPaste which fixed the two issues with moving items in the inventory.

@AJenbo AJenbo mentioned this issue May 23, 2019
@AJenbo

This comment has been minimized.

Copy link
Member

@AJenbo AJenbo commented May 26, 2019

And now DrawSpellList has been fixed. I'm almost sure that the issue with Wirth also applies for 32bit builds, so all that is missing is getting the 64bit builds compatible with 32bit builds 🐰

@MaddTheSane

This comment has been minimized.

Copy link

@MaddTheSane MaddTheSane commented Jul 1, 2019

In regards to save games: In another project I worked on, the person wrote a pointer to the file that caused loading issues when porting to 64-bit. The pointer itself was unused in the file, but the increase in size of the pointer caused issues when saving/loading a file.

Perhaps something similar is happening in the save code?

@AJenbo

This comment has been minimized.

Copy link
Member

@AJenbo AJenbo commented Jul 1, 2019

Yeah, pointers might be the issue but from what I have looked at so fare the issue is mostly about structure alignment. Wrapping structs.h in #pragma pack(push, 4) get the thing much further.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
5 participants
You can’t perform that action at this time.