T-Engine4 / ToME4 beta11 unleashed!

As promised here comes T-Engine4 and ToME4 beta11 !

I wanted to release it this sunday for the ARRP but I was with my wife at a medieval fantasy meeting, so no go (but you might get pictures later !).

Hopefully this late release can quality for the ARRP, but anyway it was scheduled to happen! Sorry if there are a few rough edges, I rushed to put it up as soon as I got out of the train!

Release highlights:

  • New class : the Cursed
  • New race: Noldor
  • New feature: Vaults!
  • New talents for archers and some other classes
  • Better UI, fully playable using the mouse
  • Display speed improvments
  • Much balancing and fixes

Expanded changelist:

  • Fixed alchemist channel staff description
  • Fixed alchemist description
  • Offensive Phase Door & Teleport will only apply the debuff if the target was teleported
  • Jeweler correctly deducts his fee when making a ring
  • Fixed the Trollshaws quest completion
  • Clicking on your spot now spends a turn
  • When finding lore items they register in the combat log
  • Added trails based on damage type to the Channel Staff spell, made it intoa real projectile and uses spell crit instead of physical crit
  • New zone: Path of the Deads, a special starting zone for undeads
  • Strings can have font style inlined: #{normal}# #{bold}# #{italic}# #{underline}#
  • Heavy & Massive Armour Training talents now increase armour by a bit more and reduce the chance of incomming critical hits
  • Undeads can also have escort quests generated
  • Objects can have a "not_in_stores" field to prevent them from appearing in any stores
  • Added more new world artifacts
  • The portal to Mount Doom in Eruan is one use only
  • New troll & canine tiles
  • Increased UI display speed. LogFlasher, LogDisplay, HotkeysDisplay, ActorsSeenDisplay, Tooltip and PlayerDisplay classes have changed and are now easier (and faster) to use. Converting is easy:
    • In your Game:display() change lines like self.log:display():toScreen(self.display_x, self.display_y)
    • to simply: self.log:toScreen()
    • To convert your own PlayerDisplay have a look at ToME's one, but basically you just need to create a texture with :glTexture() and then update it at the end of yoru display() and add a new toScreen() method
  • Escort quest AI will now try to not get stuck deciding between two possible ways
  • Escort quest AI will now run for the portal if it is in sight and the path is clear
  • The money achievements will pop no matter the mean of acquiring money
  • Allow on_grant() method of quests to return true to prevent the quest from being assigned
  • Amulets of the fish now have a description
  • Added a new unique jelly
  • Added new world artifacts
  • All starting zones now forbid big out of depth NPCs
  • Added Packing cunning generic talents, available to archers & slingers at start and unlockable by rogues
  • Projectiles run a checkAllEntities("on_projectile_target") on their destination
  • New talent category "Field Control" as dexterity based techniques. Available to archers/slingers and unlockable by fighter/berserker and rogues.
  • Added an easy mode: -30% damage, +10% healing, one self-resurrect at the level entrance every 5 levels
  • Can not escape from the endgame fight
  • New feature: Vaults !
  • New class: Cursed (thanks to Benli)
  • Magic Mapping is blocked by block_sense grids (like vaults)
  • Added a new encounter in the west that leads on a quest and unlocks the Cursed class
  • Extracter the rooms loader of Roomer generator into a RoomsLoader taht is now also used by Forest
  • Static map generator can now use a rotates variable (in the map def, like startx) can can be any of "default", "flipx", "flipy", "90", "180", "270"
  • Limmir is not teleportable anymore
  • Added scrolls of controlled phase door
  • Talents ids are now strings instead of numbers, this should make savefiles more compatible proof
  • Conveyance's space destabilization effect is now based on your spellpower
  • Added fs.rename() function
  • Savefiles now write to a temporary file and are then renamed, this prevents savefile corruptions
  • Ensure consistency check of the various files of a savefile: zones saved between a save and a crash will not load
  • Changed the Valley of the Moon map ot make it possible for non mages
  • Town generator can produce vaults
  • Fire/Acid/Lightning/Frost infusion got special effects (burn, blind, daze, freeze)
  • Added lore to Tol Falas
  • Reduced Thunderstorm mana drain
  • HotkeysDisplay, ActosSeenDisplay and LogDisplay can now use an image as a background "color"
  • Changed UI to split the various zones visualy and add background images
  • Added a warning to the portal to Mount Doom in Eruan that mount doom is a very fiery and dangerous place
  • Fixed Slime Tunnels and Mount Doom reentry
  • Aeryn will correctly complete the "Many prides of the orcs" quest
  • Added some new "fun" traps
  • Reaver unlock can now be done over the course of multiple games, so people will naturally get it over time
  • Added icons for main menu/craetures display/talent display
  • Hotkey display shows a tooltip for the mouseover
  • Fix icon application
  • Reduced the chance for jewelry to be ego at very high levels
  • Buffed a bit the endboss
  • Buffed one of the endgame boss drops
  • Can not teleport forward in Mount Doom
  • Tweaked Stone Wall spell
  • Added ghost NPCs, if you die to them: you can complain to Patryn on the forums :)
  • Increased number of spiders in Arhungol
  • Increased dragon power
  • drawColorStringBlended and drawColorString can now get a new argument that limits the size of the string to output
  • Inventories/Stores/... dialogs will not allow an item name to "bleed over" other parts of the dialog
  • Shattering Impact talent will not damage the user anymore
  • Maybe fix quake ..
  • Dialogs titles are in bold
  • Time Prison applies the same continuum destabilization effect as phase door & teleport
  • Left mouse click now confirms a talent use instead of rigth click
  • Right click on the map will now bring up a list of possible actions (pickup item, move to, use stairs, ...). Thegame is now fully playable using just the mouse!
  • Usuable talents show up in the right mouse contextual menu
  • All (nearly) dialogs can be exited by clicking outside their borders
  • New race: Noldor (Elves)

Have fun!

Crash :( Looks like it

Crash :(

Looks like it might be in a shader or something - it seems to be free()ing a graphics resource that it already got rid of. This was in the Trollshaws level 2; I'd just drunk a potion of lesser healing while waiting for a previously spotted hill orc archer to come around the corner. None of that sounds like it should be using any shaders (or at least none different from Beta10) so maybe there was something more OOD that I hadn't noticed yet.

[LOG] Ethan quaffs a potion of lesser healing!
[Identify] potion of lesser healing true
[LOG] You have #FFFFFF#4 #UID:1183:0#potion of lesser healing#LAST#.
54 ticks in 10.504 seconds = 5.1409 TPS
      • glibc detected *** ./t-engine: free(): invalid pointer: 0x0a8ed678 ***
= Backtrace: ===


Just happened again,

Just happened again, Trollshaws 2 (or maybe 3) again, finishing up a fight with 3 stone trolls. No apparent reason for the crash. If nobody else is seeing this, maybe my RAM is going bad.

[LOG] Stone troll hits Ethan for #aaaaaa#13.00 physical damage#LAST#.
[PROJECTOR] starting dam 3.0622112878901
[PROJECTOR] after difficulty dam 3.0622112878901
[PROJECTOR] res 0 1 on dam 3.0622112878901
[PROJECTOR] final dam 3.0622112878901
[LOG] Ethan hits stone troll for #YELLOW#3.06 light damage#LAST#.
Segmentation fault

Compiling from source

Compiling from source with:

premake4 --lua=default gmake

as you suggested in a forum thread fixes the crash problems entirely for me. So is the issue the new lua interpreter?