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)
1
17%
Hey, why haven't you implemented my favorite skill/talent/spell/ability yet? (specify below)
2
33%
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)
2
33%
Hey, that's a bug! Go fix that bug! (specify below)
1
17%
Hey, you didn't list what I want to see! (specify below)
0
No votes
 
Total votes: 6

Message
Author
Atarlost
Sher'Tul Godslayer
Posts: 1973
Joined: Sat Apr 26, 2003 7:38 pm
Location: GMT-8:00

Re: Porting ToME2 to the T4 engine

#256 Post by Atarlost »

Ar Pharazon being able to drop it is based on the theory that the ring washed down Anduin to the sea. I think he was the only really un-obvious one.
Digitochracy
n. 1. technocracy. 2. government by the numbers. 3. rule by people with the longest fingers.

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

Re: Porting ToME2 to the T4 engine

#257 Post by Zizzo »

Crim, The Red Thunder wrote:Some description 'We've managed to partially trace the rings history, and feel that these are the beings with enough power to potentially have come into contact with it.' Maybe?
Yeah, that's pretty much what I ultimately settled on. Hmm, it occurs to me that I'll need to phrase it carefully so as not to lead new players to believe that one of the six has been randomly pre-chosen as the guaranteed Ring dropper...
Atarlost wrote:Ar Pharazon being able to drop it is based on the theory that the ring washed down Anduin to the sea. I think he was the only really un-obvious one.
Wait, is Feagwath canon? As for Ar-Pharazôn, I'd always just assumed that was from when Sauron was held captive in Númenor.
"Blessed are the yeeks, for they shall inherit Arda..."

Atarlost
Sher'Tul Godslayer
Posts: 1973
Joined: Sat Apr 26, 2003 7:38 pm
Location: GMT-8:00

Re: Porting ToME2 to the T4 engine

#258 Post by Atarlost »

If Ar Pharazon got it during the captivity the War of the Last Alliance wouldn't have happened because Sauron would have been weakened. I suppose it makes as much sense as the rest of the anachronistic muddle that is the T2 plot.

I forgot about Feagwath. No clue who he even is.
Digitochracy
n. 1. technocracy. 2. government by the numbers. 3. rule by people with the longest fingers.

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

Re: Porting ToME2 to the T4 engine

#259 Post by Zizzo »

Getting close to a new release; since 1.4.0 is on the horizon, I'm going to wait for that. In the meantime, a few questions:
  • For those who've tried the 1.4.0 beta, do you prefer the new QuestPopup to the 1.3.0-era BigNews-style notification for quest changes? If so, how well does it cooperate with the Chat dialog if a quest change happens in the middle of a chat? Because the Necromancer quest has one of those.
  • In a more further-future vein: over on the active T2 2.4.x branch, they're apparently removing Alchemy altogether. We could in theory proceed in a similar but less drastic vein by making Alchemist an addon class, at such future time as I eventually get around to implementing the Alchemist class. That would have the potential advantage of reducing the ultimate size of the module somewhat and not having essences littering the floor for non-Alchemist characters. Thoughts?
"Blessed are the yeeks, for they shall inherit Arda..."

netzakh
Wayist
Posts: 19
Joined: Sun Jun 27, 2010 6:02 pm

Re: Porting ToME2 to the T4 engine

#260 Post by netzakh »

Zizzo wrote:Getting close to a new release; since 1.4.0 is on the horizon, I'm going to wait for that. In the meantime, a few questions: ...In a more further-future vein: over on the active T2 2.4.x branch, they're apparently removing Alchemy altogether. We could in theory proceed in a similar but less drastic vein by making Alchemist an addon class, at such future time as I eventually get around to implementing the Alchemist class. That would have the potential advantage of reducing the ultimate size of the module somewhat and not having essences littering the floor for non-Alchemist characters. Thoughts?
On the one hand, nearly any class can be made an add-on one. Just as essences are useless for non-Alchemists, so are staves and wands for Anti-magic characters, trap kits for those without the Trapping skill, not to mention that "bad" stuff that is so abundant on lower levels (! of lose stats, cursed items etc.) is useless for everyone. Also please take into account that Alchemy can be learnt from Adventurer quests.

On the other hand, it is true that the Alchemist class needs adjustments after porting. For example, there are egos not covered by Alchemy (i.e. missing in edit files), Morphic Oils do not work properly (those very "Potion of" without a name), and learning all egos with a similar name when learning an ego should be adjusted as now learning Slay Orc leads to learning *Slay Orc*, which should probably be the other way round.

As for the module size, I do not think that this is an issue in 2016.
East or West, ToME is best. - Netzakh

darkgod
Master of Eyal
Posts: 10750
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: Porting ToME2 to the T4 engine

#261 Post by darkgod »

The T2 continuation branch is not official really ;)
Alchemists are wildly unbalanced that's a known fact; but T2 has some wild unbalances anyway and alchemists are fun. Do it ! :)

As for the size .. yeah who cares for a few more textfiles in 2016 ? :)
[tome] joylove: You can't just release an expansion like one would release a Kraken XD
--
[tome] phantomfrettchen: your ability not to tease anyone is simply stunning ;)

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

Re: Porting ToME2 to the T4 engine

#262 Post by Zizzo »

netzakh wrote:Also please take into account that Alchemy can be learnt from Adventurer quests.
Actually, making Alchemists an addon class would in part involve removing the Alchemy skill from the module's skill definitions and defining the skill in the addon, which would mean that you wouldn't be able to get Alchemy from Mr. F. Fingers unless said addon was active. But it's sounding like the consensus on the subject is "don't bother", so that's moot.
darkgod wrote:Alchemists are wildly unbalanced that's a known fact; but T2 has some wild unbalances anyway and alchemists are fun. Do it ! :)
Well, that's for the future; Alchemists isn't what I was planning on working on next — unless, that is, people are saying it should be?

As for my other question, after some testing of my own, I can confirm that the new QuestPopup dialog does in fact play nice with chat dialogs. Which brings me back to the question: would people prefer 1.4-style QuestPopup dialogs or 1.3-style BigNews flyers for quest update notifications?
"Blessed are the yeeks, for they shall inherit Arda..."

darkgod
Master of Eyal
Posts: 10750
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: Porting ToME2 to the T4 engine

#263 Post by darkgod »

IMO you should first concentrate on the "small stuff" since you already have put in lots of content.
For example:
- torches turns do not go down
- eating doesnt seem implemented
- some(?) scrolls are not implemented
- autorunning seems to always go back to an object until it's picked up
- I cant seem to rebind my spells hotkeys (and switch to an icons hotkeys bar ? :) )
- On birth I cant find a way to remove points I put in stats, so a misclick is fatal ;)
- Go an error upon saving the princess:

Code: Select all

[CHAT] selected	Then I choose the Cloak, Milady.	function: 0x40b962e0	finish
Loading tile	object/cloak.png
Added unique	mod.class.Object/HOLCOLLETH	::	1
Lua Error: /mod/class/Object.lua:307: bad argument #2 to 'format' (number expected, got nil)
	At [C]:-1 
	At [C]:-1 format
	At /mod/class/Object.lua:307 getName
	At /data/chats/quest-princess-finish.lua:60 place_reward
	At /data/chats/quest-princess-finish.lua:73 action
	At /engine/dialogs/Chat.lua:96 use
	At /engine/dialogs/Chat.lua:49 fct
	At /engine/ui/VariableList.lua:124 onUse
	At /engine/ui/VariableList.lua:107 
	At /engine/KeyBind.lua:230 receiveKey
	At /engine/ui/Dialog.lua:665 keyEvent
	At /engine/ui/Dialog.lua:401 
Basically what I'm saying is try to make what you have as good as possible before adding the more whacky stuff like alchemy ;)

And do not take all those remarks the wrong way, they come because the rest is already quite good ! I'm proud of you! :>

PS: IRC ? ;)
[tome] joylove: You can't just release an expansion like one would release a Kraken XD
--
[tome] phantomfrettchen: your ability not to tease anyone is simply stunning ;)

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

Re: Porting ToME2 to the T4 engine

#264 Post by Zizzo »

darkgod wrote:IMO you should first concentrate on the "small stuff" since you already have put in lots of content.
For example:
See, this is exactly the kind of feedback I'm looking for. Seriously, for most values of X, the quickest way to get X implemented in the game (short of submitting a patch :mrgreen: ) is to indicate that there's interest in X by coming here and saying, "Hey, why haven't you implemented X yet, ya slacker?"
darkgod wrote:- torches turns do not go down
Right, that was a low priority. Shouldn't be too hard, I think... how long did you say I had before the 1.4.0 release? :wink:
darkgod wrote:- eating doesnt seem implemented
That's because it isn't. :wink: :oops: I'm figuring food will get implemented as a resource with a negative regen rate, maybe loosely akin to T4's Air resource. Not sure if I can get that into the upcoming release...
darkgod wrote:- some(?) scrolls are not implemented
Most scrolls aren't implemented, actually; again, wasn't a high priority. The upcoming release covers a few more. If there are any you're particularly missing, let me know and I'll bump `em up in the priority queue.
darkgod wrote:- autorunning seems to always go back to an object until it's picked up
Now, auto-explore I don't claim to understand. Pretty much all I did was hang a keybinding on the engine's PlayerRun interface. I can try to figure that out for a later release.
darkgod wrote:- I cant seem to rebind my spells hotkeys
[sound F/X: source diving] Oops, was using a bit of a hodgepodge of the engine's UseTalents dialog and the T4 module's UseTalents dialog, and got their respective wires crossed. :oops: Fixed in SVN (which I note you must be working from to have gotten the error you got below).
darkgod wrote:(and switch to an icons hotkeys bar ? :) )
(shrug) I'd need icons for that. ;)
darkgod wrote:- On birth I cant find a way to remove points I put in stats, so a misclick is fatal ;)
[sound F/X: source diving] Ah, wasn't passing right-click through to the TreeList handler callback; fixed in SVN. Left arrow would also have worked (the on-screen instructions had that backward; We Apologize for the Confusion.™)
darkgod wrote:- Go an error upon saving the princess:
[sound F/X: source diving] Ah, not so much the princess quest as Holcolleth; I was missing .max_power on a lot of activatable artifacts, which was choking Object:getName(). Also fixed in SVN.
darkgod wrote:And do not take all those remarks the wrong way, they come because the rest is already quite good ! I'm proud of you! :>
*blush* (bows) :wink:
"Blessed are the yeeks, for they shall inherit Arda..."

HousePet
Perspiring Physicist
Posts: 6215
Joined: Sun Sep 09, 2012 7:43 am

Re: Porting ToME2 to the T4 engine

#265 Post by HousePet »

Hey, why haven't you implemented X yet, ya slacker?

(Where X is joining us on IRC. :lol: )
My feedback meter decays into coding. Give me feedback and I make mods.

darkgod
Master of Eyal
Posts: 10750
Joined: Wed Jul 24, 2002 9:26 pm
Location: Angolwen
Contact:

Re: Porting ToME2 to the T4 engine

#266 Post by darkgod »

For icons, it's really easy, you can do basic ones with http://game-icons.net/ :)
If you want to customize them a little you can grab the black & white version and in gimp use the blend tool in "darken only" mode; that's how I did all the icons for tome before we started making nicer ones :)
And there are not that many spells/talents in T2 so it shouldnt take too long
[tome] joylove: You can't just release an expansion like one would release a Kraken XD
--
[tome] phantomfrettchen: your ability not to tease anyone is simply stunning ;)

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

Re: Porting ToME2 to the T4 engine

#267 Post by Zizzo »

And with the 1.4.0 release, I can now push out:

Release 0.2.0 "And In the Darkness Bind Them"

The selling point of this release, as advertised, is a basic implementation of the main plotline, up to and including (if I've done this right) the ability to actually win the game. Notes on that front:
  • The Dol Guldur quest lists the mainline dungeons through Mordor as suggested subgoals, and marks them completed when you "complete" each dungeon by reaching the bottom level. Similarly, the One Ring quest lists the alternate Ring droppers and marks them completed when you kill them.
  • The effects of wearing the One Ring are mostly implemented; notably, towns aren't destroyed yet.
  • I don't recall exactly how down stairs on Ang 99 work before Sauron is permanently killed; probably by not being generated at all. We cheat somewhat by simply having the stairs be "magically blocked" until that qeust is completed. The Ang 100 stairs are handled similarly until Morgoth is killed.
  • Also implemented is the Prisoner of Dol Guldur quest. And if I've done this right, you shouldn't need to bounce on the stairs to get Thráin to actually show up. :wink:
  • Also also taken a stab at implementing Black Breath and the various bad effects of trying to melee Nazg?l with weapons.
  • Two new achievements:
    • Always in the Last Place You Look, for getting the One Ring from an alternate Ring dropper.
    • Nine for Mortal Men Doomed to Die, for permanently killing all nine Nazg?l.
Also some other new features of various relatedness to the preceding:
  • You know how I said I implemented artifacts in the last release? Well, it turns out that was only partly true. :oops: This release implements some of the artifact activations and conferred powers; the more difficult ones (notably including the One Ring's) will come later.
  • Implemented magic mapping in the style of T2, as used by some of the preceding.
  • Some artifacts' activations also needed the standard assortment of detect-traps/doors/objects/monsters/etc. effects, which we can also use to implement some spells and scrolls.
  • We have several quests with "danger levels" now, so we add a description of it in the quests dialog.
  • While we're adding quest-related chats to Galadriel, might as well add her view-fate and *ID*-object services.
  • Adding an "Are you sure you want to wear the One Ring?" dialog conveniently happened to require the same coroutine infrastructure that I needed to implement the "Are you sure you want to wield this weapon with a shield?" dialog that's been bugging me for a while now. :wink:
  • The "resurrection" infrastructure needed for the One Ring's effects also lets us implement the Blood of Life and resurrection for high Eru piety.
  • The convoluted 'replace_display' hackery I needed to implement the "magic hiding the room" in the Prisoner of Dol Guldur quest turns out to be more or less the same hackery I needed to finally implement secret doors.
  • Fixed another thing that's been bugging me for a while now: objects on the floor now remember whether you've seen them, and the map display includes remembered objects on unremembered grids, a la T2. In the process, also made mimics look like the object they're carrying, and implemented ESP effects and monsters with the HAS_LITE flag.
  • As prompted by Darkgod, :wink: the auto-explore code should (I think) properly mark an object as "seen" so that it doesn't keep coming back to it. We Apologize for the Inconvenience.™
  • The tooltip for an artifact that's a member of an artifact set now (if I've done this right...) includes a description of the extra flags gained from full or partial completion of the set.
  • Implemented the fuel use effects of torches and brass lanterns.
  • Reproduce various T2 running behavior using the 1.4 engine's new changes to PlayerRun:
    • Stop at known traps. Once I implement traps, at least... :oops: :wink:
    • Stop at lava unless you have fire immunity or invulnerability.
    • Stop at pits, ice and deep water unless you have levitation or flight.
  • The character sheet file output now includes an attempt at object descriptions.
  • Implemented the Remove Curses and Inertia Control spells, just because they were there. ;)
  • All the usual bug fixes.
  • Assorted new hooks and actor callbacks used to implement all of the above.
And as always, the .team file for the release is available from my site, along with the Subversion repo and WebSVN front-end thereto.
"Blessed are the yeeks, for they shall inherit Arda..."

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

Re: Porting ToME2 to the T4 engine

#268 Post by Zizzo »

And another addon, inspired by UnAngband: Gender Parity. It takes various non-unique human/humanoid NPCs that don't particularly have to be male or female and allows them to randomly be either by tweaking the name/description and the MALE/FEMALE flag in a resolver.

And assorted notes and questions from development of this release:
  • Pro tip for module/addon developers: a lot of the T-Engine's standard dialogs don't work well with ActorTalents:talentDialog(). Specifically, your call to :talentDialogReturn() that sets the return value has to happen before the dialog is :unload()'ed; the Dialog:yesnoPopup() family of dialogs, for instance, do that the wrong way around [assuming you're calling :talentDialogReturn() from the passed-in callback]. Chat dialogs are even trickier, since the special :unload() method installed by :talentDialog() gets lost in all the dialog juggling. You can refer to ui-util.lua and TalentChat.lua for examples of how I've worked around this.
  • Some of the unimplemented artifact activations (notably Razorback) involve firing a projection in all eight cardinal directions (in Razorback's case, a ball that will presumably explode on the first thing it hits). Not sure which targeting mode will do that for me...
  • An idea I'm toying with is having some kind of subtle visual marker indicating areas that have been trap-detected. Not sure how to implement it, though; particles seem inefficient, display callbacks wouldn't work due to the map's reuse of grid entities, and I can't make head or tail of shaders. Thoughts?
"Blessed are the yeeks, for they shall inherit Arda..."

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

Re: Porting ToME2 to the T4 engine

#269 Post by Zizzo »

So, hotkey toolbar. I've got some preliminary work done on that in a side branch (which I'm about to merge back into trunk now that we've released). Questions so far:
  • Currently the player can choose between text-style and icon-style toolbars via a game option. Do I need to keep this, or do we think everyone will want the icon-style toolbar?
  • Do we want to reproduce T4's "feedback" animation on the icon of the hotkey we just used?
  • How much control do we expect the user to want over size and position of the toolbar? Currently it's hardcoded to the southeast corner, 50% of game window width and 20% of game window height, with icon size configurable via a game option. [This is the part that worries me ATM, frankly; the more configurable we are, the more complicated the GUI code becomes.]
  • Now that we've gone the icons route, are we also going to want to switch to an icon-style status effects display a la T4?
"Blessed are the yeeks, for they shall inherit Arda..."

Zireael
Archmage
Posts: 449
Joined: Tue Jun 18, 2013 7:24 pm

Re: Porting ToME2 to the T4 engine

#270 Post by Zireael »

[*] I only implemented icon-style toolbar in Veins and no one complained about the lack of the text one
[*] Yes please! That's the first thing I'll be doing with Veins once I'm done downloading the update!
[*] No idea honestly. My own approach is 'if it works, don't break it'
[*] *shrug* Maybe as an option?

Post Reply