Angband Forums

Angband Forums (http://angband.oook.cz/forum/index.php)
-   ToME (http://angband.oook.cz/forum/forumdisplay.php?f=9)
-   -   ToME 2.3.5(kind of) built for Windows - I think it's working (http://angband.oook.cz/forum/showthread.php?t=10869)

Grenoble August 11, 2021 02:34

ToME 2.3.5(kind of) built for Windows - I think it's working
 
I made a few small changes to AnonymousHero's fork of ToME2.3.5 right before he removed the Alchemist class. It should build on windows, and the binary in the release should work by itself.


https://github.com/jnday/tome2/releases/tag/v1.1


If you give it a try I'd appreciate hearing about any problems.

Estie August 11, 2021 02:49

So...this thing has alchemist ?

fiery_mews August 11, 2021 15:37

Oooh I'll give it a try, I'm always here for new ToME 2 content. Can't verify at the moment if it works on bona fide MS Windows, but I can check for modern Linux desktops and modern versions of Wine.

Edit: on Linux it exits with a Lua error on start... I will try and debug this. Also it still has the old setuid/setgid rubbish, and tries to install to /usr/local and create /usr/local/.tome by default; Linux users should specify a local install prefix with -DCMAKE_INSTALL_PREFIX (and note that relative paths ARE permitted for this).

Grenoble August 11, 2021 18:14

Thanks for checking it out. The goal is a faithful version of 2.3.5 that builds and runs on modern systems out of the box, and I think most of the internal system stuff probably needs to be pulled out.

It's actually kind of a tough call in the sense that the "original" version of 2.3.5 has a lot of interesting code from obsolete systems. I don't know where else you'll run into an EBCDIC converter in the wild in this day and age. A perfect recreation of 2.3.5 that builds on VAX and plays on a VT101 is, however, beyond what I'd like to accomplish.

Grenoble August 11, 2021 18:33

Quote:

Originally Posted by Estie (Post 154744)
So...this thing has alchemist ?

Yes indeed! This is basically a fork of Anonymous Hero's old work modernizing ToME and the Theme module, but I'm trying to keep things as close to 'vanilla' as possible while still being able to build on Windows. For example I'll roll back a few of the killerbunnies patches that change rather than fix.

I'd love to pull in some of the UI improvements from Angband, or mess around with windowing, but I've always wanted a version of the original I could build myself out of the box.

AnonymousHero August 11, 2021 21:14

Quote:

Originally Posted by fiery_mews (Post 154752)
Oooh I'll give it a try, I'm always here for new ToME 2 content. Can't verify at the moment if it works on bona fide MS Windows, but I can check for modern Linux desktops and modern versions of Wine.

Edit: on Linux it exits with a Lua error on start... I will try and debug this. Also it still has the old setuid/setgid rubbish, and tries to install to /usr/local and create /usr/local/.tome by default; Linux users should specify a local install prefix with -DCMAKE_INSTALL_PREFIX (and note that relative paths ARE permitted for this).

Negative skill values might also wrap around. There were quite a few bugs when compiling 2.3.5 on 64-bit platforms.

I'm sure a motivated person could cherry-pick a few later commits which fixed some of those. (The code hadn't diverged very much from 2.3.5 at that point.)

I basically only tagged it as a courtesy if someone wanted to go with that version.

tangar August 12, 2021 09:32

Great project! Sometime ago I've tried to compile https://github.com/tome2/tome2 to get binaries, but it requires 'Boost' which I failed to configure with my lame fingers :(

Thank you!

Yottle August 12, 2021 14:29

Cool! I had given up on Tome 2, which is a shame as it is my favorite game ever.

fiery_mews August 12, 2021 18:46

@AH - thanks for mentioning.

@Grenoble - I'm not sure, but I think alchemy might have been removed only after the move to pure C and libjansson (though before the move to C++14/17 and Boost). If so, it might be a better idea to base your changes on the commits just before the C++ revamp. Lemme try and find the relevant hashes.

fiery_mews August 12, 2021 19:01

@Grenoble so the commit you want is probably 2653d949a0008b44d4a41fb52d516a7766f55928. That's after Jansson was added and Lua removed, but before alchemy was removed. It's still all C (not C++) and should be a lot more stable than the Lua-including versions.

Might still need some fixes backported though. In particular there may be header issues on modern Linux systems.

Edit: yeah, linking is broken on modern Linux, and also there's a ton of warnings. But it should compile on modern Linux once I figure out the linking thing.,

Edit 2: no I was wrong, this issue was fixed later? Hang on

fiery_mews August 12, 2021 19:20

Okay, @Grenoble, try this: https://github.com/jkatzmewing/tome2/tree/pure-c

Grenoble August 18, 2021 07:17

Quote:

Originally Posted by fiery_mews (Post 154771)

having some problems with cmake and vs2019, but I'm getting close. Removing the lua looks like it was a lot of work! Was that you or AH?

Thanks for giving me a shout.

fiery_mews August 18, 2021 14:57

@Grenoble

Good luck with the VS 2019 issues, sadly I can't help you there; I'm terrible with Windows stuff.

Removing Lua was all AnonymousHero. The C++ port and everything else of modernized ToME 2 has basically been his show; I've only contributed intermittently. My largest contribution IIRC was removing most of the trap code from the C++ port.

Grenoble September 11, 2021 19:31

Got it! This was a great project to pick to learn about compilers, linkers, et al. Yours and AH's work is all in main, I want to take a look at some windowing bugs before I do another release.

Gokudera ElPsyCongroo February 12, 2022 17:22

Quote:

Originally Posted by Grenoble (Post 155283)
Got it! This was a great project to pick to learn about compilers, linkers, et al. Yours and AH's work is all in main, I want to take a look at some windowing bugs before I do another release.

So, do you happen to know how to compile it with Boost on Windows? I spent way to much time trying to install Boost, install cmake, install visualStudio, only to be slapped with dependencies errors…
I'll put the log in case you or anyone is still here

--------------------------------------------------------------------

-- Found PkgConfig: C:/Strawberry/perl/bin/pkg-config.bat (found version "0.26")
-- Could NOT find Curses (missing: CURSES_LIBRARY CURSES_INCLUDE_PATH)
-- The following packages have not been found:

* X11
* GTK
* Curses

-- Configuring done
CMake Error at src/CMakeLists.txt:187 (ADD_EXECUTABLE):
Cannot find source file:

C:/Users/mous-/Desktop/MEGAsync/Jeux/PC/tome_2.4/vendor/CppQuickCheck/src/Arbitrary.cpp

Tried extensions .c .C .c++ .cc .cpp .cxx .cu .mpp .m .M .mm .ixx .cppm .h
.hh .h++ .hm .hpp .hxx .in .txx .f .F .for .f77 .f90 .f95 .f03 .hip .ispc


CMake Error at src/CMakeLists.txt:187 (ADD_EXECUTABLE):
No SOURCES given to target: harness


CMake Generate step failed. Build files cannot be regenerated correctly.


All times are GMT +1. The time now is 17:31.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2022, vBulletin Solutions Inc.