Blogs

Tales of Maj'Eyal 1.7.0 BETA7 is upon you!

My minions,

The 7th beta of 1.7.0 is now available!
You'll find all the downloads on https://te4.org/beta-test

Please, try to keep all bug reportings on ToME's official forums at http://forums.te4.org/ as it is hardly feasible for me to survey 10 different location for bugs.
Do not use addons or DLCs to test it, as addons can always mess up the testing and the DLCs require an update to work for 1.7.

One last thing for those new to betas; characters will NEVER validate in beta; that's normal and as usual importing characters across major releases is bound to not work all too well.

Changelog in no particular order:

  • Reduced Runeskin crit bonus
  • Impending Doom gives a soul every 3 turns
  • Fixed Slipstream cost
  • Throw Bones does not hit allies
  • Disruption Shield correctly respects the radius increase from Aether Avatar
  • Fixed talents given by items from being greyed out in the hotkeys
  • Fixed Cleansing Flames
  • Fixed the use menu. Whoopsie!
  • Fixed Adept bonus levels display in the levelup dialog
  • Fixed a few rare errors

Now go test and have fun!

Tales of Maj'Eyal 1.7.0 BETA6 is upon you!

My minions,

The 6th beta of 1.7.0 is now available!
You'll find all the downloads on https://te4.org/beta-test

Please, try to keep all bug reportings on ToME's official forums at http://forums.te4.org/ as it is hardly feasible for me to survey 10 different location for bugs.
Do not use addons or DLCs to test it, as addons can always mess up the testing and the DLCs require an update to work for 1.7.

One last thing for those new to betas; characters will NEVER validate in beta; that's normal and as usual importing characters across major releases is bound to not work all too well.

Changelog in no particular order:

  • Reworked Swift Hands to provide 4 "ready" slots
  • Update harmony/one-with-nature to do what it says it does
  • Blacfire Aegis damage now checks the highest of mind or spell power
  • Reduced Adept slightly to 1.5
  • Reduced Metaflow duration
  • Increased Torture Souls cost
  • Increased Rigor Mortis cost
  • Slightly reduced Invoke Darkness damage
  • Eternal Night healing only happens under 1 life
  • After resting for a few turns, if a party member has a lower life regen than the main character, it will use the main character's regen instead to avoid super long pointless waiting
  • Fixed Assemble to try and not use archers/mages if it can avoid it
  • Ogres in elvala are now big
  • Yeek npcs are now correctly classified as small
  • New visuals for Fallen
  • Fixed a bug with force using a talent at a specified level
  • If a creatures that clone on hit that was worth 0 exp is cloned, it'll correctly still be worth 0 exp
  • Summoned creatures are always worth 0 exp
  • Sludgenest walls-to-slime do not drop items
  • Add uniques to rak'shor pride, similar to the ones already showing in all other prides. Uniques are randomly chosen between necromancers or corruptors with either a necromatic mass or sanguine horror pet.
  • Reduce the size of eruan floors (but maintain total number of NPCs). Reduce eruan from 4 floors to 3.
  • Buff various talents nerfed incidentally in prior 1.7 changes. This is not buffing them in comparison to their power in 1.6, but rather returning them to 1.6 levels of strength.
  • Fixed Chant Adept and Chant Radiant values at level 1
  • Fixed a possible recursion in damage type changing code
  • Fixed Lichform quest description
  • Multicaster can correctly only proc once (twice with orb) per turn
  • Aether Avatar correctly removes physical and magical effects
  • Spikes of Decrepitude only works on foes you can see
  • Playing in the Ring of Blood is a heinous act
  • Splatter Sigils respects blind immunity
  • No save for pure-damage bleed effects
  • Darkside abilities a specify their damage type
  • Cursed abilities are correctly marked as mind powers
  • Self-Destruction appears in the damage log
  • Category points spent to improve mastery are transferred or refunded.
  • New resolvers.register_callbacks to place callback directly onto actors
  • Fixed the arena quest. Woops!

Now go test and have fun!

Tales of Maj'Eyal 1.7.0 BETA5 is upon you!

My minions,

The 5th beta of 1.7.0 is now available!
You'll find all the downloads on https://te4.org/beta-test

Ok I promise this is the last time I slip a new evolution in a beta!
But this one was ready, cool and already made so ... welcome Fallens! Class evolution of Sun Paladins, thanks a lot to Recaiden!

Please, try to keep all bug reportings on ToME's official forums at http://forums.te4.org/ as it is hardly feasible for me to survey 10 different location for bugs.
Do not use addons or DLCs to test it, as addons can always mess up the testing and the DLCs require an update to work for 1.7.

One last thing for those new to betas; characters will NEVER validate in beta; that's normal and as usual importing characters across major releases is bound to not work all too well.

Changelog in no particular order:

  • Tweak difficulty settings for nightmare (rare spawn rate increased from 6.77%->12.5%, zone level multiplier decreased from 50%->25%)
  • Buff the celestial/radiance tree
  • Give all melee classes that don't currently start with a point in weapon mastery at birth a point in weapon mastery at birth; this also serves to make sure randbosses have the weapon mastery they need
  • Improve Pace Yourself
  • Slightly increase dammod for knives (45% str/45% dex -> 50% str/50% dex)
  • Slightly buff glyphs by making them no longer prioritize yourself before enemies for placement
  • Buff Dawn's Blade
  • Make Vor Pride's special vault have a slightly friendlier layout
  • Remove digging from all vaults that currently require digging
  • Add a fun mechanic to prevent farming of ruined dungeon orbs to get alchemy ingredients
  • Lightning+daze damage type does not undaze if target is already dazed and it didn't re-proc
  • Fixed display issue with some languages in dialog boxes
  • Fixed Form and Function
  • Prevent learning traps from the library in Yiilkgur
  • Prodigies screen splits out evolutions from prodigies to better see them
  • Fixed npcs mistakenly thinking alternate Daikara lava is damaging
  • New class evolution for Sun Paladin: Fallen! Thanks to Recaiden!
  • Prevent getting prodigies you do not qualify for
  • Fixed some timetravel abuses
  • Changed Mindrot damage to happen on base turn but be increased global speed to compensate
  • Golem will correctly levelup when resurrected
  • Altered the Sceptre of the Archlich and the Ring of the Archlich to be more in line with new necromancers
  • Stone Fortress now applies half the effect when it is not activated by the racial ability
  • Eldritch Infusion now also provides a spellpower and mindpower bonus based on shields tiers
  • Stone Vines now correctly check for mindpower instead of just willpower to apply debuff
  • Stone Warden's Shard is not affected by counterstrike
  • Buffed Stone Vines damage
  • When in combat, Call of the Mausoleum tooltip will show when the next free ghoul will come
  • Surge of Undeath now speeds up the next free ghoul of Call of the Mausoleum and increases the duration of Corpse Explosion and Putrescent Liquefaction
  • Putrescent Liquefaction only ever sacrifices at most 3 ghouls and gives one free turn in addition to the 3 per ghoul
  • Fixed swashbuckler ego keyword
  • Call of the Crypt ensures you never overcap skeletons, if you would due to the free mage/archer, a warrior is deleted and its soul refunded
  • Skeletons, Bone Giants, Ghouls and Dreads will unsummon if removing points in their talents so taht they are not supported anymore
  • Swapped Putrescent Liquefaction and Corpse Explosion
  • Fixed party display to not show the levelup icon for uncontrollable members
  • Fixed over-generous calculation in Self-Judgement
  • Chat files can now use <<>> to make said text into italic green. Because I'm lazy.
  • Fixed Range Amplification Device from Embers of Rage to work correctly on hymns and some other
  • Aether Avatar penalty only triggers for spells
  • Equipping a belt of undeath or similar immediately stops suffocation
  • Dearth arena quest is now resilient to clones! BEGONE CLONES! YOU SHALL NOT PASS!
  • Crippling Blight shows the fail% in the icon
  • Frigid Plunge damage fully ignores damage shield (because the wraith is inside)
  • Fungal Growth should work with effects that can merge (like Bloodbath)
  • Dread now learns its talents based on the spell level
  • Gorbat bamboo walls support displaying single tile walls
  • Fixed Cursed item curses from disappearing on level change
  • Toxic Death always spread Vulnerability Poison first and won't spread Stoning Poison to an enemy already stoned
  • Clarify Torture Souls description
  • Eternal Night now also costs 2 souls to sustain
  • Swapped max souls increase from Reaping to Soul Leech and made Soul Leech nonrefundable
  • Chill of the Tomb radius scales more like other spells
  • Night Sphere description shows radius, and radius slightly increases at high level
  • Discarded Refuse now scales the number of effects affected by turns but no longer unsustains itself
  • Fixed Curse of Nightmare harrowing
  • Fixed Conveyance spells targeting
  • Disabled Korean and Japanese languages in the selector, they are not at all ready for support and were never meant to be selectable. Woops!

Now go test and have fun!

Tales of Maj'Eyal 1.7.0 BETA4 is upon you!

My minions,

The fourth beta of 1.7.0 is now available!
You'll find all the downloads on https://te4.org/beta-test

Please, try to keep all bug reportings on ToME's official forums at http://forums.te4.org/ as it is hardly feasible for me to survey 10 different location for bugs.
Do not use addons or DLCs to test it, as addons can always mess up the testing and the DLCs require an update to work for 1.7.

One last thing for those new to betas; characters will NEVER validate in beta; that's normal and as usual importing characters across major releases is bound to not work all too well.

Changelog in no particular order:

  • Replaced Bone Wall with Shattered Remains in the Master of Bones tree
  • Fixed Wordly Knowledge description
  • Rewrote Aether Permeation to be a dispel protection and a spellpower boost
  • Fearscape from tanen questline and from the coruption spell both count has "orbit" for the sake of Aether Permeation check
  • Fixed wooden baricades to correctly show even when they are one tile long (fix for Embers of Rage)
  • Changed Neverending Unlife to have a visual effect when it is preventing your death
  • Fixed necrotic minions killing things to correctly give souls to the summoner
  • Correctly sort savefiles in the load menu
  • Added 2 more rows of hotkeys for the mad people :)
  • The novice mage will not appear for any character whose birth faction is Zigur (so, for Krogs of Forbidden Cults)
  • Fixed an issue between Energy Alteration and Metoric Crash (and others)
  • Fixed Worm Rot
  • Fixed Wild Summon duration
  • Fixed Extract Gem display in the advanced view mode
  • Fixed Lord of Skulls life description
  • Lord of Skulls cost changed to a fix 2 souls
  • Spectral Sight correctly reveals creatures around your minions
  • Mirror Image despawns a few turns after leaving combat
  • Fixed a bug with Beyond the Flesh
  • Fixed a savefile bloating bug
  • Fixed Cleansing Flames to correctly have a cooldown/mana cost
  • Fix Arcane Vortex and others from not doing their effects upon death
  • Fixed To The Grave
  • Fix Putrescent Liquefaction
  • Effects that should be removed on level change will be removed even if they can't be removed. This requires no further explanation :)
  • Fixed forceUseTalent

Now go test and have fun!

DLCs on Sale on Steam

I've had ToME for a long time on Steam, but only recently did I really start playing it.
I'd love to buy the DLCs, but a little discount would go a long way in helping me afford them. Problem is, when I checked on steamdb, it's been a long time since they last went on sale (Embers of Rage last sale was on 2015).
Any chances they might go on sale again anytime soon? Maybe with the release of 1.7.0?

Tales of Maj'Eyal 1.7.0 BETA3 is upon you!

My minions,

The third beta of 1.7.0 is now available!
You'll find all the downloads on https://te4.org/beta-test

Please, try to keep all bug reportings on ToME's official forums at http://forums.te4.org/ as it is hardly feasible for me to survey 10 different location for bugs.
Do not use addons or DLCs to test it, as addons can always mess up the testing and the DLCs require an update to work for 1.7.

One last thing for those new to betas; characters will NEVER validate in beta; that's normal and as usual importing characters across major releases is bound to not work all too well.

Changelog in no particular order:

  • Lichform does not wait your next death in the Arena, as resurrection is forbidden there
  • Updated the Arena death dialog to use the same code as the normal one
  • New Actor:udpateSustains() to force sustains to turn off and on again
  • Changed Adept and other such talent changes to bit a bit more clear in how they operate (add raw levels affected by mastery to effective level, they do NOT trigger on_learn and such and do NOT alter raw level)
  • Mirror Images inherit widebeams, Spellcraft and iceblock penetration
  • Actors are cleaned of temporary effects upon death even if they do not resurrect, to prevent some effects from lingering after their deaths
  • Prevent Born Into Magic to work with Elemental Array Burst as it would be rather useless
  • Slightly decrease the total amount of talent trees on rare+ enemies and restrict the level at which some problematic talents (notably antimagic) begin to show.
  • Phantasmal Shield does not retaliate to self inflicted damage
  • Expand randomization range for amount of talent trees
  • Slightly nerf caustic terror
  • Slightly reduce talents taken by rares
  • Limit antimagic on early game rares
  • Limit fearscape on rares
  • Levelup screen now accounts for bonus talent levels in the talent descriptions
  • Actors with inventory access disabled can not access stores either. Sorry!
  • Multicaster will respect Aether Avatar
  • Unless in developer mode, during betas the game will refuse to load most addons; as they only mess up with the testing
  • Fix anomalies from not having cooldowns/not using a turn
  • Fixed some talents description in the levelup screen when using advanced view mode
  • Fixed Call of the Mausoleum duration in the tooltip
  • Fixed a bug that prevented necrotic minions from leveling up their stats
  • Fixed Assemble to not error out when there are 2 skeletons and one lord of skulls
  • Silk Current also works on ice themed Necromancer trees
  • Fix floor effects (among other things) staying beyond their welcome
  • Prevent Putrescent Liquefaction from hitting your own minions
  • Fixed error when non actors deal damage

Now go test and have fun!

Tales of Maj'Eyal 1.7.0 BETA2 is upon you!

My minions,

The second beta of 1.7.0 is now available!
You'll find all the downloads on https://te4.org/beta-test

Please, try to keep all bug reportings on ToME's official forums at http://forums.te4.org/ as it is hardly feasible for me to survey 10 different location for bugs.
Do not use addons or DLCs to test it, as addons can always mess up the testing and the DLCs require an update to work for 1.7.

This release brings a lot of little changes, fixes, balancing for the Necromancer, but some other goodies too! Of particular note is a new class evolution for Archmages (sorry I can't stop myself!), the High Thaumaturgist!

One last thing for those new to betas; characters will NEVER validate in beta; that's normal and as usual importing characters across major releases is bound to not work all too well.

Changelog in no particular order:

  • Fixed some more Possessors memory leaks
  • Fixed possessing various NPCs
  • Fixed using Multiply while assuming the form of a multiplying NPC (now it works!)
  • Fix Kinetic Surge to let you self-target even with only one foe around
  • Fixed Endless Woes disease and slow
  • Harkor'Zun is correctly classified as a demon
  • Metaflow now only boosts spell levels for some turns after activation
  • Fixed Slow effect merging with itself but not actually updating the speed
  • Swapped Necromancer talents that used callbackOnActBase for life threshold checks to callbackOnAct so that they account for faster players
  • Discarded Refuse can only be used in combat, unsustains when out of combat and sustain cost is changed to a casting cost. It is not meant to be left on but to be used as a cooldown
  • Swapped Black Ice and Chill of the Tomb
  • Increased Night Sphere damage and reduced Erupting Darkness damage
  • Lichform quest correctly consumes the fortress energy
  • Increased the life rating of bone giant summons
  • Golden Age of Necromancy is now 1 turn invulnerability (it was intended this way but I was dumb and didn't find a way to do it until now)
  • Fixed a small memory leak when visual hotkey feedback is enabled
  • Buff maulotaurs
  • Add revamped bandit fortress vault
  • Changed Adept to instead grant a flat +2 to all talent levels
  • Fixed Telmur Ruins being too full of light
  • Fix absolute resistance display in tooltips
  • Detonating Charge is greyed out if pinned
  • Shadowstep is greyed out when pinned
  • Prevent removing talent levels learnt from items
  • Fixed Attune Mindstar exploding when used with a shield
  • Prevent Bone Grab to be cast on oneself
  • Voidstalker cloaks correctly work only on foes
  • Fix shield's power being wrong in their name but right in their description
  • Greater checkerboard vaults should again have correct vault door entrances and revamped it to be smaller and have a boss in the middle
  • Fixed Misdirection and Curse of Nightmares
  • Corpse Explosion only works on Ghouls
  • Fix Gelid Host from damaging yourself
  • New class evolution for Archmages: High Thaumaturgist, that focuses on using and enhancing beam spells
  • Healing infusion can be used even at 0 healing factor (for the cure side of it)
  • Capped Scoundrel's Strategies to 100% crit penalty
  • Curse of Shrouds movement bonus now triggers when swapping places with an ally
  • Perilous Cliffs should not be overridden by meteors
  • Shadow Grab now uses spell speed
  • Tumble targeting can now be freely moved around
  • Fixed a couple of memory leaks.
  • Reduced damage on River of Souls somewhat
  • Master of Bones' Armoured Skeleton Warriors now always have a blink rune instead of a random one
  • Discarded Refuse is now instant-cast
  • Slightly reduced damage and increased radius on Across the Veil
  • Casting Dire Plague on foes already affected will not reduce the duration
  • Corselight disappears when the caster dies
  • Fixed a few skills that work on living things from working on Lich
  • When there is possible negative life the player's healthbar will now account for it and add a visual marker at the "0" health point too
  • Fixed To The Grave
  • Health warning effect now accounts for negative life
  • Rime Wraith cooldown can not be altered
  • Corpselight can not be placed into walls
  • Fixed Frantic Summoning not actually giving the full speed reduction
  • Phase Summon correctly moves the camera
  • Fixed Call of the Mausoleum range description
  • Fixed Lich self-resurrect to work with minions too
  • Soul Leech can not apply to the summoner or self
  • Runed Bone Giants have gotten a little makeup
  • Lord of Skulls now has images for all possible bone giants
  • Assemble now makes eternal before heavy (so in order of size)
  • Gave a bonus for Dreads affected by Blighted Summoning
  • Hiemal Shield only affects 66.6% of the incoming damage when above 1 life, 100% when under
  • Fixed Neverending Unlife
  • Corpselight correctly checks for caster's position
  • Fixed Lich description saying they gain resistance cap
  • Lost life warning input disabler now counts both max life and max negative life
  • Putrescent Liquefaction does not damage allies anymore
  • Fixed Spectre talents to actually work (fun mistake, half their code was in the Lost Land code ;) )
  • Fix necrotic minions being able to receive items but not using them
  • Assemble correctly respects Lord of Skulls' right of uniqueness and will not merge it with the rest of the rabble!
  • Fix Cold Flames traps
  • Dreadmaster correctly learn disperse magic
  • Necromancers can now use the party orders to dismiss any minion
  • Added new hooks "PartyOrder:define" and "PartyOrder:execute"
  • Pressing x on the levelup dialog can toggle between the current display and a new one were every value of talents over 5 levels is shown at once (just try it's harder to explain than it really is ;) )
  • Call of the Mausoleum summons a free ghoul a little more often
  • Surge of Undeath now also heals minions
  • Necrotic minions can only be healed by themselves, other necrotic minions or talents that are not powered by nature
  • Soul Leech does not affect your own minions
  • When Putrescent Liquefaction absorbs a dying ghoul/ghast, every two of them you'll get one soul back
  • Necromancer's Eternal Bone Giants now know Throw Bone
  • Lord of Skulls now grants effects more gradually and at the high end can now even affect a bone giant
  • Fixed Shatter Affliction rune description
  • Fixed Lich evolution not showing up anymore in the prodigies screen once learnt
  • Moved the default binding for 'w'ield to 'e'quip and the old 'e' binding to 'E' (not that this matters as this was just and alias for 'i'nventory anyway). Those are the DEFAULT binds, if you want the old ones, you can rebind to whatever you prefer :)
  • WASD keys no longer affect negatively arrow keys
  • WASD keys now have a repeat function if if keep them pressed, just like normal keys do (the timing may bit a bit different from other keys as it can't be handled by the OS itself)
  • Fixed Zigur patrols crash
  • Fixed arena mode
  • Made the death code resilient to entities without name
  • Fixed a crash on reload when Draebor (and likely some others) is present on the level
  • New dispel framework, from now on do dispel effects as target:dispel(eff_or_t_id, source)
  • IMPORTANT: removeEffectsSustainsTable, removeEffectsSustainsTable, removeEffectsSustainsTable and removeEffectsSustainsTable now take a first src parameter. Addons need updating or will explode!
  • New "callbackOnResurrect", "callbackOnDispelled", "callbackOnDispel"

Now go test and have fun!

Tales of Maj'Eyal 1.7.0 BETA1 is upon you!

My minions,

The day of the Necromancer is drawing near! While 1.7 is not yet released .. its first beta is!
You'll find all the downloads on https://te4.org/beta-test

Please, try to keep all bug reportings on ToME's official forums at http://forums.te4.org/ as it is hardly feasible for me to survey 10 different location for bugs.

Of particular interrest is, obviously, the full rewrite of the Necromancer (you can find some more details on them there: https://te4.org/blogs/darkgod/2020/05/necromancer/patch-17-big-feature-preview-new-necromancers) but also the localization support.
The current beta ships with a partial Simplified Chinese translation that should be complete once 1.7 is fully released.
Also thanks to this framework it is now possible for addons to provide new translations for new languages easily without having to override 95% of the game's code!

One last thing for those new to betas; characters will NEVER validate in beta; that's normal and as usual importing characters across major releases is bound to not work all too well.

Changelog in no particular order:

  • Block has no effect against self inflicted effects to prevent some problems for Demonologists
  • Focused Wrath now also resets the cooldown of Mind Storm at talent level 5
  • Fixed Demon Seed spell of Ashes of'Urhrok from taking two turns when it auto-attaches a seed to your inventory
  • New minor demon, the onilug
  • Switch chat channel is now unbound by default, as it's not used much and people ended up on different channels by mistake
  • Reduce the size of Reknor
  • Fix Marauder, Archer, and Skirmisher not being taught poisons when siding with assassin lord for the first time to unlock the category on an account
  • Fix weaver queen's portal being destroyed by temporary terrain
  • Fix temporary terrain destroying the portal to return to Maj'Eyal in the Fearscape
  • Fix mastery and perfection egos overwriting each other
  • Fix save/reload bug in Hammer Toss
  • Burb now has his own tile! All hail Burb the snow giant champion!
  • Change how rares and randbosses are generated to be tree based instead of individual talent based thus making them focus on trees more and increasing chance to see tier 3 and 4 talents while also making rares easier to evaluate at a glance
  • Fix Shadow Feed mana regen at very high talent level
  • Tune down Grand Arrival a little
  • Altered Essence of Speed formula to be less punishing on high level NPCs and reduced its mana cost
  • Give Spell Shield, Blinding Speed, Corrupted Negation, Unstoppable, Disperse Magic and Shadow Simulacrum a lower change to appear on ranbosses
  • Marked for Death, Chromatic Fury, Haymaker and Bombardment can't be used by NPCs
  • Prevent Weapon of Wrath from showing on randbosses
  • Melinda has a new haircut (also available to players after unlocking redhair)
  • Malevolent Dimensional Jelly finally got its own tile! It is now MORE malevolent!
  • Full and total rewrite of the Necromancer class, I can't really give a list of change as 95% of it is new or altered a lot :)
  • Lich is now a race evolution for Necromancers, with it's own racial talent tree
  • Archmage's Wildfire, Storm, Ice and Stone trees are now available without an unlock (they still require a category point)
  • Cleansing Flames is now an active that sets yourself on fire to activate the cleansing flames efefcts for yourself and all burning wake/inferno damage as before. This makes it work with Spellcraft
  • Reduced cooldown and mana cost of Inferno
  • Merged Quicken Spells and Spellcraft
  • Added Energy Alteration in the newly freed Meta tree that allows to change damage spells types dynamically, hopefully enabling some fun multi-elements builds
  • At level 6 Metaflow now increases the talent level of all spells by 1 when casting them
  • Rework of the Phantasm tree, Illuminate is more useful, Phantasmal Shield remade, Invisibility is not a sustain anymore and has no damage penalty and a new Mirror Image spell
  • Enabled "WASD" movement (with an option to turn it off, and keybinds anyway). The big difference to normal movement is that it responds to key *release* and can combine directions. So you can do diagonal movement with just 4 keys by pressing two at the same time
  • Bone grab will correctly fail if not hitting target.
  • Fix Shattering Shout bug
  • Fix Sentinel not putting initial talent on cooldown
  • Fix Poltergeist duplicate uniques in the living weapon vault
  • Fixed an infinite loop between Flexible Combat and weapons with multi-attacks
  • Grapple will check if target can be silence/slowed
  • Stalked will not prevent entering worldmap
  • Eyal's Wrath have correct duration
  • Make using item that can use talents respect the talent's usage conditions
  • Fixed negative fortress energy
  • Fix Rune: Blink description and line of sight bug
  • Solipsism threshold fixes
  • Fix Disruption Shield bug
  • Shield wand and Healing totem now work with Through The Crowd
  • Fix skip learning a trap break player.restCheck
  • The damDesc talents function can now take a list of damage types and aggregate damage types can themselves define this list too
  • Nerf Grand Arrival resistance reduction andd buff poison AOE damage
  • Fix Hold the Ground description
  • Intimidated no longer prevents entering the worldmap
  • Remove negative resists from of madness ego
  • Remove negative resists from werebeast's ego
  • Remove negative stats from battlemaster's ego
  • Reduce freeze iceblock life
  • Nerf nature slow proc on egos
  • Fix accuracy bonuses matching their effects
  • Remove selffire from Corrupted Negation
  • Fix callBackOnHit damage going through Unstoppable
  • Blast can no longer randomly multihit
  • Blast damage now actually reduced by distance (up to 50% at max range)
  • Random knockback VFX direction now matches effect
  • Fix Unseen Force to actually use getTalentRange so it works with RAD, fixed tooltip inconsistency
  • Allow cancelling Temporal Form's anomaly talents
  • Fix Advanced Shadowmancy crits
  • Fix Vargh Redemption AI
  • Update shattering shout to modern scaling formula and cap radius
  • Move Blood Spray damage to after applying disease to avoids Virulent Disease being triggered and then immediately overriden by a weaker disease
  • Fix Advanced Shadowmancy tooltip damage
  • Remove Heighten Fear antisynergy with Darkness and Predator
  • Make hasLOS properly respect Dark Vision
  • Increase minimum level for merchant tunnels event to 18, saving new players left and right!
  • Fox Hold The Ground tooltip
  • Pride stair guardians are now rank rare instead of elite, which they already were in all but name
  • Fix Dreamscape/Fearscape fizzling on summoners instead of summons
  • Update Dream Hammer mastery to 1.6 scaling
  • Turned diggable walls into doors in some vaults
  • Fix Scattershot-type talents multi-hitting the player/breaking targeting
  • Fix Blood Vengeance
  • Fix Endless Woes tooltip
  • Fixed radius and target attributes for Vargh Redemption
  • Reduce damage taken requirements for prodigies that require those
  • Remove blighted summoning from gorbat, replace with grand arrival and rage
  • Add cost to crude iron battle axe of kroll, rungof's fang, mummified egg sac and razorblade
  • Adjust formula for Dominate resistance penetration and change cap to 70%
  • Nerf Rampage speeds
  • Reduce spawn rate of living weapons vault in halfling ruins
  • Prevent randbosses with a fixed class from rolling that class a second time
  • Remove the burglar's ego
  • Modify collapsed tower vault to make it more interesting
  • Give grushnak pride orcs -30% damage when randbosses
  • Add worms vault to dry lake of nur
  • Somewhat reduce number of vaults in prides and add new unique vaults for them
  • Make forest ruined building 2 vault more interesting
  • Make worms vault a bit more reasonable
  • Add language localization support.
  • New hooks "Game:changeLevel" and "PartyIngredients:collectIngredient", "Zone:InfiniteDungeon:loadNPCs", "Combat:attackTargetWith:beforeArmor"
  • Updated the way escorts are coded to make them easier to mod. To avoid stuff exploding too much in addons, the old hooks are disabled and now two new ones took their place "EscortRewards:givers" and "EscortRewards:rewards"
  • Added a framework to know how a talent got activated (by action, forceuse, callback, ...) along with passing this into to the damage projectors
  • New callback "callbackOnSummonHit"
  • New Map:removeEffect() method

A huge thanks to all those that contributed to help make this release!
And a special mention to Otowakotori for his (and his fellow teammates) amazing work on the translation framework.

Now go test and have fun!

Explanation of the localization feature for addons creators

My addon creator minions!

The next release of Tales of Maj'Eyal will include support for localization of the texts. And since this change can affect you I wanted to explain a bit what this entails. There are two things to consider: making your addon translatable and providing translations (either for your own addon or for a whole new language for the game itself).

Making your addon translatable

Let's start with the easy stuff: if you do not want to bother with it you have NOTHING to change. Your addon's texts will display in English as before and that's it :)

Now, if you want to support it here's how it works: The game now provides two new methods to handle text, these functions are _t and tformat. They are both extremely easy to use, a little example:

foo = "This text is visible by users"
bar("This one is also visible!")
test(("And this one is too but with formatting too! %d is a number and %s a string!"):format(7, "Yes I am a string!"))

Would now simply become:

foo = _t"This text is visible by users"
bar(_t"This one is also visible!")
test(("And this one is too but with formatting too! %d is a number and %s a string!"):tformat(7, _t"Yes I am a string!"))

That's it, if you do that your addon is now localizable!

Now to give some more details of the do & don't of the new system:

  • Any string that IS an entity name, achievement name, talent name, effects name, ingredient name, birth descriptor name/display name/cosmetic, a call to a log function (game.log/logSeen/..., npc emotes, ..) and a few other minor things will NOT need to pass through the _t function as the framework will automatically understand those need to be translated.
  • Any string that IS NOT an entity name, achievement name, talent name, effects name, ingredient name, birth descriptor name/display name/cosmetic, a call to a log function (game.log/logSeen/..., npc emotes, ..) and a few other minor things will need to be put through _t or :tformat is the user is ever going to see it
  • If it is a plain string, simply prefix it with _t; like "Foorbar" becomes _t"Foobar", or [[Whatever this text is super long...]] to _t[[Whatever this text is super long...]]
  • If it is a :format() call then simply change it to a :tformat call()
  • Only do this for user-facing strings! identifiers, debug print() calls and such should not be translated.
  • NEVER do manual concatenation of user-facing strings anymore, so turn code like that:
    "There are "..nb.." foes around!"

    into

    ("There are %d foes around!"):tformat(nb)

    It is cleaner anyway.

  • A few things have change for entities, Objects always had a getName, but now npcs also do, so never call npc.name but instead npc:getName()
  • Try to not change strings around just for the sake of it, as it'll require translation of the new slightly different version again

Providing translations for your own addon

That one is very easy, basically you make a new folder named "locales" into your addon's data folder.
Inside of that you place one file per locale you wish to support. Say you want to provide translation into Simplified Chinese, you'd have a file names zh_hans.lua. For French you'd use fr_FR.lua and so on.
Each of those files should look like that:

locale "fr_FR"

t("This is a plop!", "Ceci est un plop!")
t("A string with %s formating %d code works the same.", "Une chaine avec %s du code de formatage %d marche exactement pareil.")
...

And important thing to note, the framework allows for re-ordering the parameters of formated strings. Imagine an example where you have a string that is formated like that:

local size = _t"giant"
local what = _t"rabbit"
game.log("You see a %s %s!", size, what)

Now in some languages, like French, this would need to become what, size. Handling that is actually very easy by passing some more infos into the locale file:

locale "fr_FR"
t("You see a %s %s!", "Vous voyez un %s %s!", nil, {2, 1})

Notice the {2,1} table. It simply tells the game how to reorder the parameters before passing them to the formating code. That's it!

One last case is when the same english text would translate to two different texts based on context. You can handle that with "tags". Example:

foobar(_t("This text has a meaning!", "context1"))
foobar(_t("This text has a meaning!", "context2"))

And the local file would do:

t("This text has a meaning!", "...first meaning here..", "context1")
t("This text has a meaning!", "...second meaning here..", "context2")

Making a translation addon for a new language

That is also extremely easy (to implement, the actual translation will take you days, there is a LOT of text in ToME!) to do and is basically the same as the previous section.
Indeed you do provide the language file in the exact same way, but you also add a hook to tell the game of your new locale, basically:

class:bindHook("I18N:listLanguages", function(self, data)
	table.insert(data.list, {name = "Français (French)", locale="fr_FR"})
end)

If your language needs special characters not included in the game's default font you can also provide a special font package and force it on inside the locale file:

forceFontPackage("chinese")

Note that you'll need to provide translations for both the game's and engine's (and DLCs if you want) locale files! This is a lot of work!

I'll try to provide an example base translation addon upon which to build on sometime in the future.

Anyway, that's it for now, have fun!

Patch 1.7 big feature preview: New Necromancers!

Hello my minions!

So, I have announced in the past that Necromancers will be getting an update, and they "soon" will! But it is not a simple update, however, it is more like a near-total rewrite. So, I wanted to go over them a bit to give you a feel for what's coming.

Necromancers in patch 1.7 will have 12 class talent trees and 2 new generic talent trees. The class trees are split by theme into 4 groups of 3 trees each: Minions, Death, Darkness and Cold.
The way souls are generated and spent has changed. There are more ways to get new souls, even in a solo fight, but also more ways to spend them. The intention is that you should have to think about when to spend souls but, they shouldn't feel like consumables either.

So, with that in mind, let's go over the themes!


Minions

What necromancer would go out without an army of undead minions to slaughter their foes? Well some I hope, as I want minion-less builds to be viable, but that's a different matter ;)
One important thing to note is that minions no longer decay outside your necrotic aura! As before, however, all necrotic minions are incapable of passively regenerating life. Another important change is that your minions can't hurt you by default, and you can't hurt them either.

Master of Bones

This tree focuses on the summoning of skeletons with various powers. All of them share some basic properties:

  • No summoning timer: once summoned, a skeleton will stay by your side until it is destroyed
  • Sturdy: as you levelup most of them will have the skeleton racial shield available to them
  • Limited: you can never summon a lot of them at once, so try to care for them!

As a necromancer gains power they learn to summon stonger types of skeletons, including mages.
Necromancers can also combine and enhance their basic skeletons into more powerful forms:

  • Bonewall: should the need arise, a skeleton can be "expanded" to create an unmoving bonewall that damages and pins down all foes
  • Bone Giant: by combining 3 normal skeletons the necromancer can make a powerful and sturdy bone giant to become the backbone of their minion army
  • Lord of Skulls: by funneling even more souls into a single skeleton, a powerful necromancer can create a Lord of Skulls, enhancing the power of the minion even further. At high level they can even grant them new extremely powerful talents.

Master of Flesh

This tree focuses on summoning ghouls of varying power. All of them share some basic properties:

  • Summoning timer: once summoned, a ghoul will only exist for some turns, and then they decay
  • Numerous: Ghouls are expendable minions, you can summon them in greater quantities than skeletons and you have multiple ways to "expend" them, from a simple corpse explosion to liquifying them into a cloud of gore that follows you around

Raising ghouls is part of any worthy necromancer's arsenal and such a basic task that they can do it instinctively. At the start of each combat and every few turns afterwards a ghoul automatically rises to aid the necromancer. They can also be summoned en masse, however, should the need arise.
Ghouls are expendable minions and no necromancer would shed a tear when one (or 10) die, as long as their death was useful.

  • Make them go boom: Once a ghoul has served its time, or when it is destroyed, why not make it go out with a bang (literally), literally exploding in a mass of gore!
  • Liquefy them: Once a ghoul is dead, or exploded, why not use their remains to make a cloud of gore that follows you around, damaging all foes.
  • Sacrifice them: Who likes debuffs? Nobody! So make a ghoul absorb the effect for you and then go boom!

Master Necromancer

This tree focuses on enhancing and using your existing summons without adding new ones.
With it you can: increase their power, protect them while they are nearby, buff them up, recall them back to you for protection, or even use them to prevent damage directed at you.


Death

Any necromancer worth their salt has some dominion over death. These trees concentrate on utilizing the souls and deaths of your foes to your advantage. Yummy souls!

Animus

The staple talent of every necromancer lives here: Soul Leech. Anytime you or your minions deal damage to a creature, you apply soul leech to it and, should it die, steal its soul for your own purposes.
That is not all, however. This tree also offers you the ability to consume souls to heal yourself and regenerate mana, torture victims of soul leech for even more souls, and gain buffs based on the current number of souls!

Death

Focusing specifically on absorbing souls and gaining bonuses upon deaths, this tree starts with the return of the fan favorite Rigor Mortis and adds ways to teleport to the place of death of your foes, regenerate when you kill, and damage any creature afflicted by soul leech (so hopefully everyone).

Eradication

A melting pot of high end death effects, this tree can unleash your vampiric side, create graveyards to resurrect your minions, hurt your foes, and sees the return of another fan favorite: Impending Doom!


Darkness

A necromancer works in dark and remote places, hidden from the living and shunned from society.
Some learn to use that darkness to their advantage.

Nightfall

The old staple of Invoke Darkness is back, but improved at high-end as a 3-wide beam!
In addition, banes are still present and now improved by Erupting Shadows which doubles down on baned creatures. Poor things.
But what if you want to play minion-less and thus have less "soul dump"? Well River of Souls is there for you! Automatically firing a weaponized soul each turn for AOE damage!

Dread

In all the taverns of Eyal, you can always find an adventurer mumbling in the dark about the terrors they've faced, a glimpse of madness in their eyes. Those who have seen a Dread, or, worse, a Dreadmaster.
Necromancers, however, do not fear the Dreads, they control them! Dreads are expensive support minions. Their purpose is to harass and debuff your foes, making them ripe for the picking by your army or your own spells.

Age of Dusk

Ahhh the Age of Dusk. The Golden Age of Necromancy. A time of plagues and hopelessness.
This tree represents all of that, with Dire Plague, a disease that bypasses disease immunity and can trigger lots of effects in the tree, including ripping out the souls of its victims.
The Golden Age of Necromancy talent offers a slew of saves and resistances, most notably the extremely rare teleport resistance. And when your life drops below 1, you can even gain 2 turns of full immunity to everything!


Cold

The cold embrace of death. A feeling known to every necromancer.
The cunning necromancer goes even further, using cold to damage and defend, or even summon a wraith!

Grave

Chill of the Tomb returns, but with a twist: any minion caught in the blast is covered in a thin layer of ice, reducing all damage they take! So blast away!
In addition, the Black Ice spell gives a way to focus on priority targets, dealing heavy damage and increasing damage taken from minions.
Last, but not least, the Corpselight! It is a static pseudo-minion that deals constant AOE damage and grows in power each time you cast spells, and can even be made to implode in a burst of cold destruction.

Glacial Waste

Damaging your foes is nice, but useless if you are dead!
All of this tree focuses on one spell: Hiemal Shield, a powerful shield that can block damage, retaliate with bolts of ice, create wastelands around you and even regenerate itself.

Rime Wraith

Hailing from the glacial wastes of the north, the Rime Wraith is a powerful, fully immaterial spirit of ice and death. Nothing can stop the cold embrace of this parasitic spirit as it jumps into foes and friends alike each turn, in a fast paced dance of death. A Rime Wraith’s purpose is to protect your other minions and debilitate your foes.


Generic

Necromancers no longer share any trees with Archmages, either class or generic, resulting in some new stuff and some shuffling.

Necrosis

Necrosis is back, but now as a generic which focuses even more on negative life and "anti-nature".
Actually, I did not mention it much yet, but many of the necromancer spells have specific additional effects if you are under 1 HP!
So, Blurred Mortality is back, bringing in the negative life goodness, and the additional effect of increasing resistances if you are under 1 HP.
But that's not all, with Across the Veil triggering whenever the 1 HP threshold is crossed, in either direction and uses the energy of the crossing to blast foes with damage and reduce your cooldowns!
Last, but not least, come the rune-interacting talents, which strongly encourages you to not use wild infusions and only use runes.
"But DarkGod where is Lichdom?!" Well, it's not here anymore! Lich is now a prodigy, like a race evolution. The requirements for it do not change however you still need to do the quest and all.

Spectre

Shared with the future Gravelord class from Lost Land, the spectre talents focus on movement and vision by turning yourself into a spectre! A kind of replacement for Divination and Conveyance trees.


Lich

Ahhh, the Lich! The fantasy of many necromancers, the ultimate form of undead (or so they think).
A lich has a racial tree, along with the usual immunities and stat boosts you've come to expect from them. Their talents focus on self-resurrection (at a cost!), inspiring fear in your foes, commanding an army of shadows and bolstering all allied undead in sight. A true commander of the dead!

There we go, the new Necromancer class in all its undeath glory, coming to you in patch 1.7!

Syndicate content