![]() |
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. |
So...this thing has alchemist ?
|
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). |
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. |
Quote:
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. |
Quote:
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. |
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! |
Cool! I had given up on Tome 2, which is a shame as it is my favorite game ever.
|
@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. |
@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 |
Okay, @Grenoble, try this: https://github.com/jkatzmewing/tome2/tree/pure-c
|
Quote:
Thanks for giving me a shout. |
@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. |
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.
|
Quote:
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. |
can someone run me through how do i make a "shoot manabolt to nearest enemy" macro, please?
|
First you want every macro to start with \e\e\e , so as to cancel anything that might be waiting for a prompt. Then in tome, unfortunately the letters for various activities such as casting spells or copying spells are variable and might change throughout the game. "m" accesses the menu where you can choose those activities; there is a way to choose an activity not by its letter, but by a different code (I forgot how exactly); but casting spells is the default, so what I do is use
m@\r which picks "cast a spell" regardless of which letter is currently assigned to casting spells. Assuming your spellbook is inscribed with @m1 and mana bolt is the first spell in it, denoted by "a", the macro would look like this: \e\e\em@\r1a I assume you know how to modify that to include targeting if needed. That "@" can be given an argument (omitting of which here, as explained, will pick the default - cast spell), I forget how that works; if anyone knows, feel free to enlighten me. Edit: I read your op again; since you asked specifically to target the closest enemy, here goes: Make sure the option "use old target by default" is set; the macro then is: \e\e\e*tm@\r1a |
I thought ToMe has keymaps as well as macros? Macros should be used *only* for status changes (like aggressive/cowardly, or fast/slow, or fire arrows/normal shooting.) Unless there are no keymaps. Then things get hairy.
Note: V has no status changes, so macros were removed some time after libcurses. (I only ever used them for color editing.) |
Whats the detriment of using macro instead of keymap ?
Edit: Also, in tome I put <detect trap> + <detect monster> on one key, I thought that wouldnt work unless you use macro ? |
If you use say "M" for the macro, it'l get substituted any time you type it--even if you're not at the command prompt. Use a keymap in that situation. There are some games that actually still need them, including ToME and Sil, but it's tricky to rely solely on macros.
|
Yes I am aware of that, I use the F# keys for macros (and F for teleport other, typically the need for that comes after finding a permanent light source). I could use a keymap for F instead I guess.
|
All times are GMT +1. The time now is 22:30. |
Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2023, vBulletin Solutions Inc.