Development log

Oh pretty graphs! Realtime statistics by levels and class/race/...


I just added a new feature to which uses the existing database of characters to offer statistic graphs of those characters split by levels.

I.e: you can check how many Archmages reach level 10 or compare the death curve of Cursed and Berserkers or .../
Well you get the point!

Check it out:

Chonomancy: Paradox Mage

Well it's been a long long time coming and I've learned a lot getting here so I'm very happy to say that the Paradox Mage talent trees are completed.

Now that's not to say that the class is done. Because of the number of new talents and the nature of the resource I need to get some playtime in with them to test the numbers, make sure that the class is balanced, and most of all to ensure that they're fun to play.

So... mostly finished? That's pretty safe to say. I still need to run through all the talent descriptions, particles, and sound effects. Give it all a once over to make sure I didn't leave anything out. Plus we still need an unlock. But the class is playable and I hope will add a lot to the game once it's all polished up and released.

I'd like to share some of my favorite talents with you though as a teaser of sorts.

Paradox Clone - You summon your future self to fight alongside you for a few turns. (Note that this is a full player clone complete with tactical AI. Probably one of the toughest summons in the game. It also has a really cool side effect but I don't want to get to spoiley.)

See the Threads - Darkgod did all the coding on this one and came up with the idea. Sweet spell that lets you exist in three different timelines for the next few turns and then pick the outcome you like the best.

Precognition - My idea, DGs code. This spell is the reason I've decided to remove the vision and detect type effects from the chronomancy tree. This is your vision, this is your detect. You cast this and get to act for a few turns, see what's in a vault, fight a monster you've never encountered to gauge it's abilities, or whatever you want to do in that time (even learn a talent to test it out before really having to learn it). When the buff wears off the game reloads you back to where you cast it as though nothing happened. But you, the player, gets to keep all the knowledge you've acquired.

Lots of other neat stuff too but those are my favorite three.

Introduction to mindslayers

They'll be here very, very shortly. They don't play like any other class in ToME, so I decided to highlight some of their oddities and point players in the right direction. Some things to note:

1) Talent info texts refer to 'energy' while the resource bar on the left side of the screen says 'psi.' It's all the same stuff.

2) You're never going to have much energy. It goes up by one per character level and one per point of willpower.

3) Energy doesn't regenerate naturally. You have to absorb it through damage shields or various other means.

4) Mindslayers are all about sustains, though it's not as simple as just turning them all on. You'll never have enough energy to do that.

5) Many key abilities are triggered by turning sustains *off*.

6) Telekinetically wielding a weapon requires a special talent that mindslayers start the game knowing. Use that instead of the 'w' command. Use 'w' for wielding weapons in your actual flesh and blood hands.

7) Mindslayers are perfectly happy wielding two-handers, one-handers with shields, bows, or slings in their flesh and blood hands. Don't feel confined to a single weapon type. However, you can only telekinetically wield a single melee weapon, so it's usually best to make that one a two-hander.

8) ToME still gets a little confused when you try to equip a shield while telekinetically wielding something. For now, just remove the telekinetically-wielded weapon, equip the shield, then re-equip the weapon. Sorry!

9) The entire Focus tree is designed around telekinetically wielding gemstones instead of melee weapons. Try it out if you want to play a mindslayer like a caster.

10) Mindslayer abilities scale powerfully with stats and talent points. If some talent doesn't look worth investing in, check again later.

11) The Conduit talent interacts in a complicated fashion with the various aura talents. If you're wondering why an aura isn't cooling down, it's because you've got it tied up in Conduit.

12) The shield and aura talents are exceptional tools for absorbing and dealing damage spikes. And, of course, managing damage spikes is how one wins.

Chornomancy: Gather the Threads

This was Sirracco's idea but I figuring out to actually do the effect ended up taking a lot longer then anticipated. The idea was to pull power from other time lines. As much as I love Sirracco's initial idea of casting a spell, cloning the player and the bolt to reload the level, then doing it all over again, it sounded like a lot to implement. So I ended up going with a next spell cast inflicts X more damage route (I know, a bit boring but hey).

So at first I tried to use something like Martyr except having the spell hit the target again rather then hitting yourself. I ran into an infinite loop here and after a failed attempt to fix it decided to scrap that idea.

Second idea was to have this be a stacking buff that broke on cast. So the first turn you get a big bonus to damage and if you don't use it right away you can stack more damage on top of it, though in much smaller percentages. After five turns of this you'd lose the gathered damage if you hadn't used it. Casting a spell at any time would also end the effect.

So I created a time out effect and the activate/deactivate for my new timed effect and I started testing. The power on the tooltip updated as I wanted it to but the power on the character sheet never went up. At which point I realized that activate happens once (on activate) and whatever number it pulls at that time is the number it will have.

Next I tried putting the damage buff in the time out effect itself (time out effects happen everytime the timer ticks down) which led to the character ending up with +1000% damage. It was putting the value on everytime as I wanted but wasn't clearing the old values out.

After wracking my brain for awhile I remembered that on merge effects work for damage so they could probably work for this (I'd used them for stuff like damage over time effects but never anything else). I looked over a few on merge effects, specifically bloodlust and the berserker strength one (bloodrage?) then went to work modifying bloodrage for my stacking damage effect.

Here's how everything came together and the guts of what a self stacking timed effect needs.

Activate - This is your base value you want to happen the first turn.
Deactivate - To remove the effect completely at the end.
Time Out - This is your trigger for reapplying the timed effect (we're applying the exact same timed effect so our merge code can merge them.) Put whatever value you want to add or remove as the power.
On Merge - Here you need to remove the old timed effect and make sure your new timed effect gets the correct duration and updated power before it gets applied.

The rest of the talent was pretty easy once I got that out of the way so I won't go into it. I'm sure anyone that needs to deactivate a talent when another talent is used can search for stealth or lightning speed and figure it out ;)

I'm pretty happy with the end result and may update my speed control tree now that I know how to do this. A slow that starts off big but loses power every turn could be fun as would a speed effect that gave you a big boost but lost power each turn.

Successful compile from svn

After a few false starts, like trying to compile with the MinGW/SDL1.3 setup which I already had installed, I got a clean compile and successful create of a new character with the sources from svn.

I started fresh with a clean MinGW install and followed the instructions in the wiki.
What a concept!

How to get source from svn.
How to build dev environment and compile sources.

Mindslayer preview

Mindslayers are the first subclass of the Psionic class. They don't control minds or read thoughts or cloud vision or sow confusion. They don't sense danger or see the future or will changes to reality. In fact, they can barely even manage to apply any forces outside of their immediate reach.

Hey! What kind of psionic is this, anyway?

They're the kind that uses their thoughts to pick up a twenty pound greatmaul without even touching it. And then, without moving a muscle, they use it to murder anybody who looks at them funny.

But what if they want to murder somebody else at the same time, you ask? Well, that's why they have hands! With a little assistance from judiciously applied mental forces, mindslayers can quite easily heft whatever weapons they want and do their blood-letting the old fashioned way, too.

That's stuff you get for free. It's not even in a talent tree. So what else can they do? I'll talk more about it later, but here are some highlights:

-Set people on fire with their brains
-Electrocute people with their brains
-Reshape weapons and armor
-Run and jump like a Yoda-trained olympian
-Erect mental shields to absorb damage and energy
-Project energy through melee-range auras
-Leech energy from surroundings and foes
-Enhance all of the above using gemstones as psionic foci

Hopefully we'll see them in beta 19!

Chronomancy : Temporal Warden Playtest

For those that haven't been following the development thread I've decided to ditch the Infinite Traveler for now and roll the dual-wielding into an archer/dual-wield rangerish class.

The old Temporal Warden idea (more of a traditional Arcane Blade) is still on the back burner too but the name Temporal Warden will belong to this ranged/dual-wield hybrid.

To facilitate this I coded a new tree, Temporal Archery that has some neat archery effects and a +movement speed talent called celerity that lets you swap weapons without spending a turn. Also revamped the Temporal Combat tree a bit to supply some Strength and Magic through talent points so that they won't be so stat hungry(two separate talents that give a percent of Will to these two stats while sustained).

Been playing around with this class to test balance and what not and most of all... to make sure it's fun and interesting to play.

I also got some anomalies coded though they're not yet implemented (going to need DGs help with that part). Maybe the Temporal Warden will be ready for b19, we'll have to see :)

Chronomancy Development: Infinite Traveler

Worked on cleaning some stuff up today so that the chronomancy talents will use the talent format that all the spells are moving too. Also moved Damage Smearing into the Temporal Combat tree and replaced it with Swap in the Weaving tree (swap will let you switch places with another actor).

Wrote the Infinite Traveler description up and have it's talent trees pretty much set.

Coded Borrowed Time, originally I wanted this to give you two actions then stun you after those two actions are finished but handing out energy or lots of global speed broke the timed effects. So instead Borrowed Time will greatly increase your global speed (1000%) for a few turns then stun you for a few turns.

I still need to do Temporal Double (a beefier shadow simulacrum) and Temporal Wake (a beam that inflicts random status effects) for the Threading tree and Time Skip (removes an actor from the game for a few turns) for the Time Travel tree. I'm not sure yet on how I'll do Time Skip (the turns need to be counted somehow so the timed effect will have to be on an entity other then the target).

That'll leave Premonition, See the Threads, and Revision. Then the class will be finished enough to playtest (anomalies aside).

Chronomancy Development: Speed Control

The boys slept at the same time today so I had a chance to finish up another talent tree.

Speed Control
Entropic Shield - Slows Projectiles and provides some physical resist.
Slow - Small radius ball that reduces targets global speed.
Haste - Increases the casters global speed for a short time.
Stop - Stuns targets near the caster in a radius of three (four at higher talent levels).

I've also been thinking more about Premonition and Deja Vu. Premonition I think would be cool if it created a savefile, let you goof around for a few turns, and then reloaded the savefile (regardless of what happens) or just reloads the savefile when you die. In other words, you get to see what's in the vault or gauge the abilities of a boss you've never seen before. Deja Vu I think should daze for a turn so you have to really pay attention to sense creatures :)

Not sure what I'll work on next. For anyone that's curious here's the development thread on the forums...

And it begins again

Chronomancy development has picked back up. Still busy with the family life though so I can't promise when it'll be done but I have managed to get a couple of talent trees done over the last two days.

Also have a working outline of what I want to do that's up to date so the direction is all there.

Maybe beta 20? No promises but we can hope :)

Syndicate content