Illusionist-v23

Version
Version Major: 
1
Version Minor: 
0
Version Patch: 
1
File
Game Addon: 
game_addon_string: 
tome

Recent changes:

- Updated for 1.0.1.
- Doppelganger works on uniques.

Glutton 0.0.6b

Version
Version Major: 
1
Version Minor: 
0
Version Patch: 
1
File
Game Addon: 
game_addon_string: 
tome

– Digesting no longer stops you from entering the world map.
– Learnable talents are now limited to the level of Digest instead of the level of Gastric Acid.
– Regurgitate and Catabolize are now disabled if your stomach is empty.
– Decreased Gorge's damage scaling with talent level.

Benchmarking Lua

Just out of curiosity, I decided to see how much I had to worry about optimization in Lua. I downloaded a Lua binary from http://code.google.com/p/luaforwindows/ and ran a few tests.

Fresh boot, AMD dual core 2.6ghz. In case you're curious, that's a pretty old computer; it was at the price-performance sweet spot when I bought it, but parts are going to start failing soon.

local time = os.clock(); for i=1, 10^7 do if i==0 then break end end; print(os.clock()-time)
0.422

Note that this basic loop consists of 1 increment, 2 compares, and 1 jump. Every loop that follows is going to be the same, except sometimes they have 1 less compare (the if in the middle of the loop). I can run it more than 20 million times in a second. If I was doing this in ToME, I wouldn't notice any difference in framerate until I did it around 2*10^4 times every frame. That would drop my framerate from 30 to 29.

local time = os.clock(); local p; for i=1, 10^7 do p = math.sqrt(i) end; print(os.clock()-time)
1.766
Takes about four times longer to do a square root loop. I could only do 5000 square roots every frame before affecting Lua framerate.

local time = os.clock(); local p; for i=1, 10^7 do p = i^0.5 end; print(os.clock()-time)
1.11
Huh, that's funny. For the non math inclined, i^0.5 is the exact same thing as sqrt(i). I repeated this several times to be sure-- sure enough, ^0.5 is faster. And, I might add, easier to type, and easier on the eyes. So adjust that square estimate to 9000 a frame until we affect framerate.

local time = os.clock(); local p; for i=1, 10^7 do p = math.sin(i) end; print(os.clock()-time)
2.281
Slowest yet. Looks like I could get away with 4000 sines. I'm going to assume tan and cos work at similar speed (maybe not a safe assumption in light of the surprising square root discovery!)

local time = os.clock(); local p; for i=1, 10^7 do p = math.exp(i) end; print(os.clock()-time)
2.484
About the same as trig. Can't imagine wanting to do a lot of this.

local time = os.clock()local p = "test"; for i=1, 10^7 do if p~="test" then break end end; print(os.clock()-time)
0.422
Comparison of strings isn't any slower than comparison of numbers. That's because of how Lua handles strings. p is a pointer to a string; "test" is a pointer to the exact same string.

TL;DR: Unless you're writing display code or pathfinding code, there is almost nothing you can do that will noticeably impact the performance of ToME. Don't worry about speed-- worry about having your code do what it's supposed to do, and do it clearly.

Glutton 0.0.6a

Version
Version Major: 
1
Version Minor: 
0
Version Patch: 
1
File
Game Addon: 
game_addon_string: 
tome

Fixed a bug that caused talents to be learnable past the cap restrictions if the digested creature had more than one talent.

Glutton 0.0.6

Version
Version Major: 
1
Version Minor: 
0
Version Patch: 
1
File
Game Addon: 
game_addon_string: 
tome

– You can now unlearn a Digested talent from the right-click menu in the use-talent menu ('m').
– Added a new talent, Excrete, which is learned automatically with Digestion and is used to immediately remove a creature from your stomach.
– Added effect icons.
– Ward is now excluded from Digestable talents.
– Gorge now correctly Devours enemies even if it applies enough extra physical damage to kill them.
– Inhale's use range is now correctly 0.
– Removed Catabolize's Hunger increase.
– Decreased cooldown on Catabolize.
– Digestion is now uncancellable.

Tales of Maj'Eyal 1.0.1 available on OSX

My dear OSX minions,

You too can now enjoy 1.0.1 on your favorite OS !
Go download it: http://te4.org/download

Have fun!

Druid Class v1

Version
Version Major: 
1
Version Minor: 
0
Version Patch: 
1
File
File: 
Game Addon: 
game_addon_string: 
tome

Its a complete version 1.
So hopefully it doesn't have any bugs. XD

Glutton 0.0.5

Version
Version Major: 
1
Version Minor: 
0
Version Patch: 
1
File
Game Addon: 
game_addon_string: 
tome

– Talents learned from Digestion are now capped at both the effective level of Gastric Acid and the level at which the digested creature knew the talent.
– If you already know a talent at or above maximum learnable level, then that talent will not be selected for a learning attempt.
– Fixed learning object talents like Block, Command Staff, Shoot, and Reload.
– Telekinetic Grasp is now unlearnable directly from Digestion.
– Increased stat gain from bosses from 2 to 3.
– Now works with Classic UI.

Resource Tutorial 1.0.3

Version
Version Major: 
1
Version Minor: 
0
Version Patch: 
1
File
Game Addon: 
game_addon_string: 
tome

Now works with the Classic UI, thanks to nate/natev.

Glutton 0.0.4

Version
Version Major: 
1
Version Minor: 
0
Version Patch: 
1
File
Game Addon: 
game_addon_string: 
tome

– Devour now ignores instakill resistance. >:)
– You can now learn talents from Digesting any creature.
– Decreased effect of Hunger on life regen so that at max Hunger, your life regen will stay above 0.00 at the start of the game.
– Decreased stat bonuses from Digestion (again). You no longer gain stat points from Digesting elites.
– You are now granted 10 stat points on birth.
– Fixed Devour targeting message.
– You no longer start with the Combat Techniques category.
– You can no longer Devour self-resurrecting creatures.
– Digest, Catabolize, and Regurgitate now each display the next creature to be used.
– Catabolize now displays the Catabolize results for the next creature to be used.

Syndicate content