Porting ToME2 to the T4 engine

If you have a module that you'd like comments on or would like to know how to create your very own module, post here

Moderator: Moderator

What do you want to see in the next release?

Hey, why haven't you implemented my favorite race/subrace/class yet? (specify below)
0
No votes
Hey, why haven't you implemented my favorite skill/talent/spell/ability yet? (specify below)
2
50%
Hey, why haven't you implemented my favorite scroll/potion/wand/staff/rod/other object yet? (specify below)
0
No votes
Hey, why haven't you implemented my favorite store/quest/event yet? (specify below)
0
No votes
Hey, that's not what that dungeon's supposed to look like! (specify below)
0
No votes
Hey, why haven't you implemented my favorite game mechanic/UI feature yet? (specify below)
1
25%
Hey, that's a bug! Go fix that bug! (specify below)
1
25%
Hey, you didn't list what I want to see! (specify below)
0
No votes
 
Total votes: 4

Message
Author
Zizzo
Sher'Tul Godslayer
Posts: 2220
Joined: Thu Jan 23, 2003 8:13 pm
Location: A shallow water area south of Bree
Contact:

Re: Porting ToME2 to the T4 engine

#616 Post by Zizzo »

Clatch wrote: Mon May 22, 2023 6:50 pm Okay. Newbie here. I downloaded this to check it out, and WOW! I was surprised to see the same interface.

I'm trying to decipher some of the comments here, though. There is mention of "sound F/X." What is that referring to? Are you referring to implementing sound and music?
(shrug) My comments have background noises. Don't yours? :wink:

Thorondor wrote: Wed May 24, 2023 8:57 pm Cheers Zizzo
Think a bug has crept in RE self-damage with spells ; - casting globe of light now damages player - the player is affected just as much as monsters.
What? [sound F/X: testing] Agh! dammit! I swear I thought I had this sorted out. Give me a little time on this one… :?
Thorondor wrote: Wed May 24, 2023 8:57 pm the thing I mentioned with arrows: if you try to buy a stack of arrows e.g. 23 arrows, it'll probably cost about 8gp. if you sell the 23 arrows you'll probably get 8gp back. If you sell 1 arrow at a time you'll get 1 GP so theoretically you could make a few gold pieces for free. Not that I would - too tedious.
See, that's what I can't reproduce. In my tests so far, buying 10 Arrows costs 12gp.
Thorondor wrote: Wed May 24, 2023 8:57 pm Couple of other things:
Have noticed that if you have a bad ring e.g. ring of stupidity, but it's not fully identified, then you can still sell it!
[sound F/X: source diving] Gah! Cursed items aren't supposed to get the minimum sale price of 1gp. Fixed for next release.
Thorondor wrote: Wed May 24, 2023 8:57 pm I think gloves of agility are hindering spellcasting; - i don't think this occurred in original T2
[sound F/X: source diving] Looking in the wrong place to check whether gloves increase DEX. Fixed for next release.
Thorondor wrote: Wed May 24, 2023 8:57 pm could you remind me how to get the addons e.g. gondolin bookstore into the game?
Download them from the links in my release notes, and copy them into the same directory where addons for the main game live. In the Addons dialog on the main screen, you can choose "T.o.M.E. Classic" to select the addons to enable for new T2 characters. If you mean retroactively adding an addon to an existing character, the method I describe for Negative Effect Timeout Cleanup should work the same way for T2 characters and addons; you'll need the ID for the addon you want to add, which you can find by unzipping the .teaa and looking in its init.lua file for the 'short_name' field.
Thorondor wrote: Wed May 24, 2023 8:57 pm In terms of features to come:
- is it possible to get a short term shortcut for going cowardly and changing speed?
Fair point, getting to the Tactic/Explor dialog via the <Esc> menu is a bit cumbersome. Any preferences for a keybinding for it?
Thorondor wrote: Wed May 24, 2023 8:57 pm - is mindcraft available yet? - that'd make priests etc more viable.
Yeah, that was one of the headline features for the 0.6.0 release, as requested by Atarlost. :wink:
"Blessed are the yeeks, for they shall inherit Arda..."

Zizzo
Sher'Tul Godslayer
Posts: 2220
Joined: Thu Jan 23, 2003 8:13 pm
Location: A shallow water area south of Bree
Contact:

Re: Porting ToME2 to the T4 engine

#617 Post by Zizzo »

And that self-fire bug is probably going to be a show-stopper, so looks like it's time for an emergency bugfix release:

Release 0.7.1 "Kid Gloves"

This is mostly a bugfix release:
  • One of the possible side effects of being hit with PSI damage is paralysis; free action is supposed to protect from that, but due to a typo, it wasn't.
  • Was messing up the check for whether gloves increase Dexterity and thus shouldn't reduce mana when worn.
  • Stores set a minimum sale price of 1gp per item — which they really shouldn't be doing for items with a price of 0, because that's how we detect cursed items, among other things. :oops: While we're at it, we now filter unsellable items out of the player's inventory in store dialogs.
  • Have I mentioned how much I hate the self-fire code? :evil: After further digging, it turns out I was reading the code backward: selffire=true doesn't mean never hit the caster, it means always hit the caster. [sound F/X: forehead repeatedly striking desk] I've actually tested it this time, so I know it's doing the right thing (famous last words… :roll: ).
But I did add one requested feature:
  • Added a keybinding to access the Tactic/Explor dialog. For now it's bound to <Ctrl-C> by default; you can rebind it in the usual manner.
I've probably missed some reported bugs in the above; We Apologize for the Inconvenience.™ :oops: (Just report them again. :wink: ) Known bugs that are still under investigation include:
  • Travak appearing multiple times (and apparently other artifacts…).
  • Randarts reporting *ID*'d info when just ID'd? Maybe some sloppiness in Object:getDesc().
  • Maze edge walls not visible. (Actually, is this still a problem? My tests aren't reproducing it.)
I'm actually slightly surprised to have no bug reports from the new Necromancy code; I guess no one is playing Necromancers? :wink: As always, here is a good place to report any bugs you find.

And as always, the .team file for the release is available from my site, along with the Subversion repo and SVN::Web front-end thereto. And for those of you following along on SVN, the 0.7.1 release branch will get bug fixes for all the aforementioned inevitable bugs.

And since having them scattered throughout the thread is sort of useless, here's a reference list of all the T2 addons I've released:
  • Alchemic Arcanorum (current release 1.0.0): Starts Alchemist characters with an Alchemic Arcanorum object from my old ToME:Arcanorum T2 module, which can be used to store and extract essences.
  • Gender Parity (current release 1.0.1): Modifies assorted NPCs that don't particularly have to be male or female so that they can be either randomly.
  • Go to Landmark (current release 1.0.1): A quickie port of my T4 addon of the same name; allows you to auto-travel to various landmarks like stores or up/down stairs via the "Show known landmarks" action on the <Esc> menu.
  • Neutral Townsfolk (current release 1.0.0): As requested by Thorondor. :wink: Modifies a few of the more harmless town denizens into the "Neutral" faction so they don't pester you.
  • ZAngband Monsters (current release 1.0.1): Adds ZAngband monsters (hence the name). Untested.
  • Gondolin Book Store (current release 1.0.0): Also as requested by Thorondor. :wink: Adds a book store to Gondolin (hence the name…).
So, back to bugfixing mode, then. Although I am still taking requests for new features or anything I haven't implemented yet.
"Blessed are the yeeks, for they shall inherit Arda..."

Zizzo
Sher'Tul Godslayer
Posts: 2220
Joined: Thu Jan 23, 2003 8:13 pm
Location: A shallow water area south of Bree
Contact:

Re: Porting ToME2 to the T4 engine

#618 Post by Zizzo »

Guess I should have waited a day for the new engine release… :oops: :wink: But I've got a few things I can push out:

Release 0.7.2 "It's In the Walls!"

This is mostly a "mini-feature" release, covering some of what looked like the low-hanging fruit from my not-yet-implemented list:
  • Most of the new features are small bits that I didn't do at first because I thought they'd be hard, but now I've already built the infrastructure I need for them in the process of implementing something else:
    • The guts of Traps of Curse Armor and Curse Weapon can easily be reused to implement Scrolls of the same name. :twisted:
    • I'd already implemented the glyph of warding map feature for Runecraft's Rune [Protection], so it was easy to hook into that for Scrolls of Runes of Protection.
    • I already had Half-Ogre's Explosive Rune power implemented, but didn't have handling of the exploding rune map feature; turns out it's nearly identical to existing handling of glyphs of warding. [Actually, I'm not sure I've got explosive runes right; as I read the code, they don't actually explode unless the player is standing on them while a hostile actor attacks them, otherwise they act sort of like glyphs of warding. Can any T2 players confirm?]
    • The Invisibility temporary effect from Potions of Invisibility was obviously what I needed for Mimicry's Invisibility power.
    • Similarly, the handling of the PASS_TREE flag from the Elder Ent mimicry form was just what I needed with the PASS_WALL and ONLY_WALL flags to implement Wall Mimicry.
    • Actor:teleportRandom(), it turns out, already supports the sort of targeted teleporting that I needed to implement the Tracker spell. (Keeping track of teleportations on the level, on the other hand, was a bit trickier…)
  • On a lark, implemented the Create Boulders talent conferred by the Boulder-throwing skill. :mrgreen: We don't yet have any way of actually throwing those boulders, alas. In theory, of course, we're supposed to be able to throw pretty much anything, notably including potions that are supposed to shatter on impact; I may just punt that and implement a Throw Boulder talent.
  • And of course, bump up to the new v1.7.5 game engine. :wink:
But I did fix a few bugs:
  • Apparently when I broke out the jumpgate-creating code from Phase Door to its own function for reuse elsewhere, I forgot to actually take said code out of the Phase Door code, so we were creating the jumpgates twice. :oops: Generally harmless, I think, but still.
  • Apparently no one was using the Inertia Control spell, because I don't think that would have worked. While I was there, I reimplemented it as a sustained talent, since that seems like a better fit.
  • Now that we have sustained talents that cost mana, we should probably start treating them like sustained talents for mana purposes — i.e. reducing max mana instead of spending mana on activation. I've got the basic infrastructure implemented for that now, and so far I'm using it for Inertia Control (which has both an up-front activation cost and a sustain cost).
I've probably missed some reported bugs in the above; We Apologize for the Inconvenience.™ :oops: (Just report them again. :wink: ) Known bugs that are still under investigation include:
  • Travak appearing multiple times (and apparently other artifacts…).
  • Randarts reporting *ID*'d info when just ID'd? Maybe some sloppiness in Object:getDesc().
  • Maze edge walls not visible. (Actually, is this still a problem? My tests aren't reproducing it.)
And of course, I've probably introduced some bugs in these new features, along with all the bugs that were already there and just haven't been tripped over yet… :oops: :wink: As always, here is a good place to report any bugs you find.

And while I'm here, a few notes and questions:
  • As I mentioned above, I'm so far using the new sustain-reduces-max-mana infrastructure for the Inertia Control spell. There are other talents that would potentially be affected, like Bear form or the various Mimicry sustains, which may not have been designed with that sort of long-term mana cost in mind. Wall Mimicry, for instance, costs 40 mana, and Spellbinder, another spell that looks like it really wants to be a sustained talent, can cost as much as 300 mana. How do people think we should go with this?
  • Has anyone used the Touch of Death ability in T2? That's something else on my not-yet-implemented list (not associated with Necromancy, to my surprise). Its description in the original data files reads: "Your melee blows can insta-kill, but you only receive 1/3 of the experience". Thing is, I can't find it actually implemented anywhere in the code.
And as always, the .team file for the release is available from my site, along with the Subversion repo and SVN::Web front-end thereto. And for those of you following along on SVN, the 0.7.2 release branch will get bug fixes for all the aforementioned inevitable bugs.

And since having them scattered throughout the thread is sort of useless, here's a reference list of all the T2 addons I've released:
  • Alchemic Arcanorum (current release 1.0.0): Starts Alchemist characters with an Alchemic Arcanorum object from my old ToME:Arcanorum T2 module, which can be used to store and extract essences.
  • Gender Parity (current release 1.0.1): Modifies assorted NPCs that don't particularly have to be male or female so that they can be either randomly.
  • Go to Landmark (current release 1.0.1): A quickie port of my T4 addon of the same name; allows you to auto-travel to various landmarks like stores or up/down stairs via the "Show known landmarks" action on the <Esc> menu.
  • Neutral Townsfolk (current release 1.0.0): As requested by Thorondor. :wink: Modifies a few of the more harmless town denizens into the "Neutral" faction so they don't pester you.
  • ZAngband Monsters (current release 1.0.1): Adds ZAngband monsters (hence the name). Untested.
  • Gondolin Book Store (current release 1.0.0): Also as requested by Thorondor. :wink: Adds a book store to Gondolin (hence the name…).
So I might putter around for a bit picking off more low-hanging fruit (and fixing whatever bugs you guys find, of course). Although I am still taking requests for new features or anything I haven't implemented yet.
"Blessed are the yeeks, for they shall inherit Arda..."

Thorondor
Higher
Posts: 75
Joined: Wed Apr 15, 2015 11:59 am

Re: Porting ToME2 to the T4 engine

#619 Post by Thorondor »

Fab to see another release 😁
I try to play through methodically until character meets a sticky end, my current 0.71 char has quite a lot of promise, lots of good unique items fairly early on, of course I know the rng will smite me for saying it but still....
Main reason to mention is that when I added 0.71, but loaded a 0.63 character I think the spell error rates are the unchanged, I think the engine utilises the older version of the mod. When previously I've then deleted the module (e.g. 0.63 in this example), the 0.63 character won't load. It's a shame to retire a decent character, hence my occasional posts with old versions.
Will it be possible to look at whether backwards compatability is feasible (or indeed already implemented and I'm being inept - perfectly feasible!)

I saw a ring of stupidity on sale for 0gp(i hadn't sold it)

Features: fire golem (and summoning) would be very cool but might not be a low hanging fruit...

My other wishlists relate to continuing to integrate the graphics from te4, so it looks like te4 and maybe once this has completed alpha stage, seeing if theme could port as its a really cool map and feels more middle earthy 😊 again these probably aren't very easy.

If I can complete the game with current char will explore the other features

Thanks again

Post Reply