Page 1 of 1

Steam-Fu Master Class

Posted: Thu Jun 05, 2025 1:31 am
by Shad3
Add-on here: https://te4.org/games/addons/tome/wshade-sawgunfu

Adds a new Tinker subclass and a brawler evolution.
Requires Embers of Rage DLC.

---

Steam-Fu Master is a class that combines steamsaw and steamgun to fight in close range.

This class revolves around melee range combat, wreaking havoc, and throwing oneself into the fray. Shoot enemies multiple times at the cost of high ammo cost that you feel your ammo pouch has a hole. And do not forget your saw shreds through your foes.

Don't worry about surrounded by enemies as you have decent survivability and steam generation, as long as you strategically utilize our injector and steam generator. But don't get cocky, choose your fight wisely as getting over your head is sure way to your demise.

Master the way of the Steam-Fu through lead and bloodshed. Attain your glory by any means necessary.

---

Steam-Fu Adept is a Class Evolution of Brawler enhancing their martial styles with steamtech.

Crush your foes faster with novel techniques born by the blessing of steam.

Enjoy!

Re: Steam-Fu Master Class

Posted: Thu Jun 05, 2025 10:58 am
by Shad3
Update

Code: Select all

1.1
- Adds a Brawler class evolution and related talents

Re: Steam-Fu Master Class

Posted: Sat Jul 12, 2025 10:55 pm
by Zizzo
Got a Steam-Fu Adept Brawler going; looking good so far. Did find a small bug in the Booster Kick talent:

Code: Select all

Lua Error: /engine/interface/GameTargeting.lua:137: /engine/interface/ActorTalents.lua:190: ...shade-sawgunfu/talents/sawgunfu/brawler/unarmed-arts.lua:98: bad argument #3 to 'distance' (number expected, got nil)
stack traceback:
	[C]: in function 'distance'
	...shade-sawgunfu/talents/sawgunfu/brawler/unarmed-arts.lua:98: in function <...shade-sawgunfu/talents/sawgunfu/brawler/unarmed-arts.lua:77>
	[C]: in function 'xpcall'
	/engine/interface/ActorTalents.lua:186: in function </engine/interface/ActorTalents.lua:173>
  At [C]:-1 
  At [C]:-1 error
  At /engine/interface/GameTargeting.lua:137 fct
      =from= engines/te4-1.7.6.teae/engine/interface/GameTargeting.lua
  At /engine/interface/GameTargeting.lua:143 targetMode
      =from= engines/te4-1.7.6.teae/engine/interface/GameTargeting.lua
  At /engine/interface/GameTargeting.lua:214 
      =from= engines/te4-1.7.6.teae/engine/interface/GameTargeting.lua
  At /engine/KeyBind.lua:231 
      =from= engines/te4-1.7.6.teae/engine/KeyBind.lua
The relevant line from data/talents/sawgunfu/brawler/unarmed-arts.lua is:

Code: Select all

		if core.fov.distance(x, y, tx, ty) > 1 then
It looks like the tx and ty variables haven't yet been declared at this point. At a guess, you might have meant:

Code: Select all

		if core.fov.distance(self.x, self.y, x, y) > 1 then

Re: Steam-Fu Master Class

Posted: Sat Jul 19, 2025 2:07 am
by Zizzo
Found another bug, in the Residue Utilization talent:

Code: Select all

Lua Error: /engine/LogDisplay.lua:125: bad argument #2 to 'tformat' (number expected, got string)\
  At [C]:-1 \
  At [C]:-1 tformat\
  At /engine/LogDisplay.lua:125 logdisplay\
  At /mod/class/uiset/Minimalist.lua:492 log\
  At /mod/class/Game.lua:1619 logSeen\
  At /data-wshade-sawgunfu/talents/sawgunfu/augmentation.lua:204 \
  At /engine/interface/ActorTalents.lua:1222 callTalent\
  At /mod/class/Actor.lua:6221 \
  At /mod/class/Actor.lua:3014 onTakeHit\
  At /mod/class/Player.lua:787 onTakeHit\
  At /mod/class/interface/ActorLife.lua:42 takeHit\
  At /mod/class/Actor.lua:3072 super_takeHit\
  At /mod/addons/zomnibus/superload/mod/class/Player.lua:345 \
  At /data/damage_types.lua:553 defaultProjector\
  At /data/damage_types.lua:861 projector\
  At /engine/Map.lua:1271 super_processEffects\
  At /mod/addons/zomnibus/superload/mod/class/MapEffects.lua:138 processEffects\
  At /mod/class/Game.lua:1807 onTurn\
  At /engine/GameEnergyBased.lua:90 tick\
  At /engine/GameTurnBased.lua:51 tick\
  At /mod/class/Game.lua:1583 "
The relevant line from data/talents/sawgunfu/augmentation.lua is:

Code: Select all

				game.logSeen(self, "%s's acid residue reacts and improves %d regeneration!", self:getName():capitalize(), string.his_her(self))
Looks like a simple typo; that "%d" is probably meant to be "%s". (Don't sweat it, I make that mistake all the time. :wink: )