From 56dbeb39f38fb303f950cb559580eecdc5d039bd Mon Sep 17 00:00:00 2001
From: dg <dg@51575b47-30f0-44d4-a5cc-537603b46e54>
Date: Sun, 22 May 2011 16:39:14 +0000
Subject: [PATCH] wip

git-svn-id: http://svn.net-core.org/repos/t-engine4@3432 51575b47-30f0-44d4-a5cc-537603b46e54
---
 game/modules/tome/class/Projectile.lua        |   4 +
 game/modules/tome/data/damage_types.lua       |   3 +
 game/modules/tome/data/general/grids/lava.lua |   1 +
 game/modules/tome/data/general/grids/void.lua |   4 -
 .../tome/data/gfx/particles/teleport_line.lua |  47 ++++
 .../npc/aquatic_critter_dragon_turtle.png     | Bin 0 -> 12580 bytes
 .../shockbolt/npc/aquatic_demon_water_imp.png | Bin 0 -> 10264 bytes
 .../shockbolt/npc/humanoid_human_assassin.png | Bin 0 -> 8727 bytes
 .../shockbolt/npc/humanoid_human_bandit.png   | Bin 0 -> 9537 bytes
 .../npc/humanoid_human_bandit_lord.png        | Bin 0 -> 7630 bytes
 .../shockbolt/npc/humanoid_human_rogue.png    | Bin 0 -> 9512 bytes
 .../shockbolt/npc/humanoid_human_thief.png    | Bin 0 -> 9267 bytes
 .../tome/data/quests/start-archmage.lua       |  16 +-
 .../tome/data/rooms/space_tree_pod.lua        |  79 ++++++
 .../tome/data/zones/abashed-expanse/grids.lua |  38 +++
 .../tome/data/zones/abashed-expanse/npcs.lua  |  65 +++++
 .../data/zones/abashed-expanse/objects.lua    |  31 +++
 .../tome/data/zones/abashed-expanse/traps.lua |  20 ++
 .../tome/data/zones/abashed-expanse/zone.lua  | 228 ++++++++++++++++++
 19 files changed, 529 insertions(+), 7 deletions(-)
 create mode 100644 game/modules/tome/data/gfx/particles/teleport_line.lua
 create mode 100644 game/modules/tome/data/gfx/shockbolt/npc/aquatic_critter_dragon_turtle.png
 create mode 100644 game/modules/tome/data/gfx/shockbolt/npc/aquatic_demon_water_imp.png
 create mode 100644 game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_assassin.png
 create mode 100644 game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_bandit.png
 create mode 100644 game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_bandit_lord.png
 create mode 100644 game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_rogue.png
 create mode 100644 game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_thief.png
 create mode 100644 game/modules/tome/data/rooms/space_tree_pod.lua
 create mode 100644 game/modules/tome/data/zones/abashed-expanse/grids.lua
 create mode 100644 game/modules/tome/data/zones/abashed-expanse/npcs.lua
 create mode 100644 game/modules/tome/data/zones/abashed-expanse/objects.lua
 create mode 100644 game/modules/tome/data/zones/abashed-expanse/traps.lua
 create mode 100644 game/modules/tome/data/zones/abashed-expanse/zone.lua

diff --git a/game/modules/tome/class/Projectile.lua b/game/modules/tome/class/Projectile.lua
index bcfc0b0fca..0e9159c9da 100644
--- a/game/modules/tome/class/Projectile.lua
+++ b/game/modules/tome/class/Projectile.lua
@@ -24,6 +24,10 @@ module(..., package.seeall, class.inherit(engine.Projectile))
 
 function _M:init(t, no_default)
 	engine.Projectile.init(self, t, no_default)
+
+	if game.level and game.level.data and game.level.data.projectile_speed_mod then
+		self.energy.mod = self.energy.mod * game.level.data.projectile_speed_mod
+	end
 end
 
 --- Moves a projectile on the map
diff --git a/game/modules/tome/data/damage_types.lua b/game/modules/tome/data/damage_types.lua
index f57d7f47c2..27658af4bf 100644
--- a/game/modules/tome/data/damage_types.lua
+++ b/game/modules/tome/data/damage_types.lua
@@ -19,6 +19,9 @@
 
 -- The basic stuff used to damage a grid
 setDefaultProjector(function(src, x, y, type, dam, tmp, no_martyr)
+	local terrain = game.level.map(x, y, Map.TERRAIN)
+	if terrain then terrain:check("damage_project", src, x, y, type, dam) end
+
 	local target = game.level.map(x, y, Map.ACTOR)
 	if target then
 		local rsrc = src.resolveSource and src:resolveSource() or src
diff --git a/game/modules/tome/data/general/grids/lava.lua b/game/modules/tome/data/general/grids/lava.lua
index b974edbfcc..897b4087f1 100644
--- a/game/modules/tome/data/general/grids/lava.lua
+++ b/game/modules/tome/data/general/grids/lava.lua
@@ -46,5 +46,6 @@ newEntity{
 	name = "molten lava", image = "terrain/lava.png",
 	display = '%', color=colors.LIGHT_RED, back_color=colors.RED,
 	does_block_move = true,
+	pass_projectile = true,
 	shader = "lava",
 }
diff --git a/game/modules/tome/data/general/grids/void.lua b/game/modules/tome/data/general/grids/void.lua
index 2f5c799e22..dd6f395598 100644
--- a/game/modules/tome/data/general/grids/void.lua
+++ b/game/modules/tome/data/general/grids/void.lua
@@ -38,10 +38,6 @@ newEntity{
 	pass_projectile = true,
 	air_level = -40,
 	is_void = true,
-	--- Called when we are targeted by a projectile
-	on_projectile_move = function(self, x, y, p)
-		p:useEnergy(game.energy_to_act * 5) -- Projectiles move much slower in the void
-	end,
 }
 
 newEntity{
diff --git a/game/modules/tome/data/gfx/particles/teleport_line.lua b/game/modules/tome/data/gfx/particles/teleport_line.lua
new file mode 100644
index 0000000000..9c5008c91e
--- /dev/null
+++ b/game/modules/tome/data/gfx/particles/teleport_line.lua
@@ -0,0 +1,47 @@
+-- ToME - Tales of Maj'Eyal
+-- Copyright (C) 2009, 2010, 2011 Nicolas Casalini
+--
+-- This program is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program.  If not, see <http://www.gnu.org/licenses/>.
+--
+-- Nicolas Casalini "DarkGod"
+-- darkgod@te4.org
+
+base_size = 64
+
+local bars = {}
+for i = 1, 10 do bars[#bars+1] = rng.range(-30, 30) end
+
+return { generator = function()
+	return {
+		life = 10,
+		size = rng.range(8, 16), sizev = -0.1, sizea = 0,
+
+		x = rng.avg(-20, 20), xv = 0, xa = 0,
+		y = rng.table(bars), yv = rng.float(-0.5, 0.5), ya = 0,
+		dir = 0, dirv = 0, dira = 0,
+		vel = 0, velv = 0, vela = 0,
+
+		r = rng.range(220, 255)/255,  rv = 0, ra = 0,
+		g = rng.range(200, 230)/255,  gv = 0, ga = 0,
+		b = 0,                        bv = 0, ba = 0,
+		a = rng.range(25, 220)/255,   av = 0, aa = 0,
+	}
+end, },
+function(self)
+	self.nb = (self.nb or 0) + 1
+	if self.nb < 3 then
+		self.ps:emit(15)
+	end
+end,
+45, "line_particle"
diff --git a/game/modules/tome/data/gfx/shockbolt/npc/aquatic_critter_dragon_turtle.png b/game/modules/tome/data/gfx/shockbolt/npc/aquatic_critter_dragon_turtle.png
new file mode 100644
index 0000000000000000000000000000000000000000..8c819ff9f43b50271cd0f513e2c0ed5a4b6469d8
GIT binary patch
literal 12580
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
GLSTY7ZKsX^

literal 0
HcmV?d00001

diff --git a/game/modules/tome/data/gfx/shockbolt/npc/aquatic_demon_water_imp.png b/game/modules/tome/data/gfx/shockbolt/npc/aquatic_demon_water_imp.png
new file mode 100644
index 0000000000000000000000000000000000000000..2c5d8a80114082f925c0b8d70bf8b46d26516d4a
GIT binary patch
literal 10264
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

literal 0
HcmV?d00001

diff --git a/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_assassin.png b/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_assassin.png
new file mode 100644
index 0000000000000000000000000000000000000000..fa58050955735abb02d13f03af72430541c30591
GIT binary patch
literal 8727
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
B?2!Nf

literal 0
HcmV?d00001

diff --git a/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_bandit.png b/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_bandit.png
new file mode 100644
index 0000000000000000000000000000000000000000..df706b8ccac59dec5f1c20a6f161497b16069009
GIT binary patch
literal 9537
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

literal 0
HcmV?d00001

diff --git a/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_bandit_lord.png b/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_bandit_lord.png
new file mode 100644
index 0000000000000000000000000000000000000000..0e05000d87d257ce0a6ae551ae86ec4b5c3d2cc6
GIT binary patch
literal 7630
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

literal 0
HcmV?d00001

diff --git a/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_rogue.png b/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_rogue.png
new file mode 100644
index 0000000000000000000000000000000000000000..748a76b999814783ea7bd67cd5eb709052c3b235
GIT binary patch
literal 9512
zcmV+@CD+=CP)<h;3K|Lk000e1NJLTq002M$002M;1^@s6s%dfF00009a7bBm000d-
z000d-0Rti)g#Z8wPiaF#P*7-ZbZ>KLZ*U+<Lqi~Na&Km7Y-Iodc-oy)XH-+^7Crag
z^g>IBfRsybQWXdwQbLP>6p<z>Aqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uh<iVD~V
z<RPMtgQJLw%KPDaqifc@_vX$1wbwr9tn;0-&j-K=43<bUQ8j=JsX`tR;Dg7+#^K~H
zK!FM*Z~zbpvt%K2{UZSY_<lS*D<Z%Lz5oGu(+dayz)hRLFdT>f59&ghTmgWD0l;*T
zI7<kC6aYYajzXpYKt=(8otP$50H6c_V9R4-;{Z@C0AMG7=F<Rxo%or10RUT+Ar%3j
zkpLhQWr#!oXgdI`&sK^>09Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p
z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-<?i
z0%4j!F2Z@488U%158(66005wo6%pWr^Zj_v4zAA5HjcIqUoGmt2LB>rV&neh&#Q1i
z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_<lS*MWK+n+1cgf
z<k(8YLR(?VSAG6x!e78w{cQPuJpA|d;J)G{fihizM+Erb!p!tcr5w+a34~(Y=8s4G
zw+sLL9n&JjNn*KJDiq^U5^;`1nvC-@r6P$!k}1U{(*I=Q-z@tBKHoI}uxdU5dyy@u
zU1J0GOD7Ombim^G008p4Z^6_k2m^p<gW=D2|L;HjN1!DDfM!XOaR2~bL?kX$%CkSm
z2mk;?pn)o|K^yeJ7%adB9Ki+L!3+FgHiSYX#KJ-lLJDMn9CBbOtb#%)hRv`YDqt_v
zKpix|QD}yfa1JiQRk#j4a1Z)n2%f<xynzV>LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW
zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_Ifq<Ex{*7`05XF7hP+2Hl!3BQJ=6@fL%FCo
z8iYoo3(#bAF`ADSpqtQgv>H8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X
zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ<AYmRsNLWl*PS{AOARHt#5!wki2?K;t
z!Y3k=s7tgax)J%r7-BLphge7~Bi0g+6E6^Zh(p9TBoc{3GAFr^0!gu?RMHaCM$&Fl
zBk3%un>0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4
z<uv66WtcKSRim0x-Ke2d5jBrmLam{;Qm;{ms1r1GnmNsb7D-E`t)i9F8fX`2_i3-_
zbh;7Ul^#x)&{xvS=|||7=mYe33=M`AgU5(xC>fg=2N-7=cNnjjOr{yriy6mMFgG#l
znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U
zt5vF<Q0r40Q)j6=sE4X&sBct1q<&fbi3VB2Ov6t@q*0);U*o*SAPZv|vv@2aYYnT0
zb%8a+Cb7-ge0D0knEf5Qi#@8Tp*ce{N;6lpQuCB%KL_KOarm5cP6_8Ir<e17iry6O
zDdH&`rZh~sF=bq9s+O0QSgS~@QL9Jmy*94xr=6y~MY~!1fet~(N+(<=M`w@D1)b+p
z*;C!83a1uLJv#NSE~;y#8=<>IcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya?
z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y
zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB
zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt
z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a<fJbF^|4I#xQ~n$Dc=
zKYhjYmgz5NSkDm8*fZm{6U!;YX`NG>(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C
z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB
zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe
zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0
z?2xS?_ve_-k<Mujg;0Lz*3buG=3$G&ehepthlN*$KaOySSQ^nWmo<0M+(UEUMEXRQ
zMBbZcF;6+KElM>iKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$
z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4
z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu
zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu
z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E
ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw
zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX
z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i&
z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01
z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R
z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw
zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD
zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3|
zawq-H%e&ckC+@AhPrP6BK<z=<L*0kfKU@CX*zeqbYQT4(^U>T#_XdT7&;F71j}Joy
zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z
zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot<a{81DF0~rvGr5Xr~8u`lav1h
z1DNytV>2z=00004XF*Lt006O$eEU(80000WV@Og>004R=004l4008;_004mL004C`
z008P>0026e000+nl3&F}000_8Nkl<Zc-qXHd9+<;dES5Du!pnHbaf}`YO)5~@*rEr
z7;J+Fa6-*cQYcB20wIO8rAbO#+C{;1Wp$Co3b4wMG>f!>4$!pF00rB`2FIot+t?tx
zHQ2IjS%YO;y1MgphCO{l|2XGfOY)U0d0O3T?LW@Fd-|UJ4$u3%?-t&BPTqtNyd0a9
z8m%jMJW7Xv02l_&_ujq5JNqo&eGMTTh*R8G;A}~d1X$@;zmWi6cwFXKQ*~T%;V5CC
znQx^WI=X=Ky*nS7Za?o-&8xDB5V#5NKj0DTr4%7TN+E;;xmM}uGtL&2MfZ7Unlk52
zS6#!F-*51}>>esa&j-3HX#G`(_N^T}@mW3DD-M8=DiK2b2;@~NhzP<eN`-hFMYbqG
zd@2Yk&*p{w@3u@=xq@Toh36BmFYr@-RVxuS3E_)-zE>CkkC5tbg0Om3lnfF@4WtUd
zd%zP{2FSXLfpg`5#`6q9+_TChD9W6mbYMl_i%vF^-f{om0U(6_ex*A6#-uh%6gSX1
z#v`!KAaHn>0D>ZGg=NwHGD2J;j$5H~mZ)0ik}I!bUvc*<@{Fqj5QNp2_TIfms^H(&
z8e@MujG7o*Lf*pK5?8h<@)p)hqPRg2B;Y+ozPLl_XeY2|1%RT%$8Y*1@BDke!NWhg
z?bQPyPKI9UbsIrc|7Z|aao(V8N<9>;9jG!?uK+_F9G~Uc*;%TMF@%(aQB&vX(m8p)
zu&0kAjYfli_`4rueqreqv(i-oP&$4|elMkdZxAL;?<}!svvD|N$JX_%9~q=sPsoar
z^&<n^cK;q0mL`az8Y+l|4&$%pnSVF%^IjU2L}7^c?N=87t)tU<_6z5K9lXn$66F>-
zf6EZNc5Gqo&;a!$;ppTv`wl-#Evc}6xX#4>X`;A}RuNHUaIDjs+>UoY2e|f{YpFLH
z9G#qbbpa^y#Z~?KL=a9zN(8cuE_0^CK*cjTGsC085ng;g-owv-`8ZQ^bL`l*nUR4y
zT23RRLI*K%Wlbxt4&7YlDQgA>`N~(mLZ}ta`<I2Befpn$=*$2ZY*bFn#LlwN%J4|C
zbRO><N(X>k%^+R_onb8n>ju}7W{Vs+{0y(Z>|#23&O)oj<vTBA<NCF<+Z~$wj!_tc
z4?NE1Nf0D&F-3Wc(uz2);6Yl4EK6hBegStJ(ed6BMHQ;`8X^!cp9P$ZcJFs@_s(L<
z6lXP3X`JmR;r=-SQ5RARWPlf*5B%L<qbzfj4%oPEl!1DKH(dEzI$6dK@A?T|21uds
z&Y*Oxq*UJm|HYyxZaQ-8DO@o+xcmNZW{)2^*8cD{e?-Mr@wi^FjuU?I@ZH?|z1t}F
zSj5W(z?lX+rDKFBajwKUgLf9-K5X%<75bcsxkaYt=GnA%nE$(HA7i7#j0_HN<mfm@
zj~yc`3Xl~7UBSD8Fsh+c7~<{6J$CQU4?g~vogdvfcX;=MgYQ4*A60+r{C_eng>=sM
zxRiJBrEll_;9KAB1#c-|eIg`Ph*TloJ51TZ+0p?M-kWn4+Z}%Pi@k91c}OAnFW<VE
zMpEJ0D=x)*&#{>ng@H-{UWgt+6bff^p~9ixy7!iQ{PdGk@0n;vmmkiaoSOOi7vAil
zttD(2t#feiFSz}#yNIF+MUlQJGWhZ^LGSwMFSt&r=&uB<bIy|IhC@fE!F%eJkSxoY
zn4Y6qt8wm@jXZjA5>q&g?hq$~SZi>$Bx$TesgbwdefNR4i!ebTnArV)YIoi7zg(!H
zo+w5dl4ex{?u-MZ5YMkTUnVLnP&)jRN;33Mg;dI!9A^z4Pb>8tomynurcut{wuNdG
zGP5wx?e{;*_-uzjhXhd#Ap`REEJ2tsFuV;NRHXMFoJC@Z6Z>pcMkCc~^0bzUdg6%!
zk63D-RUy#nrYC^#l41bfgWxqns_%qhZJQ7Zyhlil@D6KIWKd%<(;OOKpw-D}cb7Oi
zy+kMXBuSIFHiQtGZhMk2N{A}!!Fz03^zTuETcj*zcEwTnq(J`EdG~P;51#E4f9>Ww
zI6OXqR_dh!;1NPypo7XEOBK8mA+!o&yt7zS^lU-}1S-IpoWfbA7bTMm1wtyM8lYB}
zGzQKgt`5>|PZ35n!my4r2ImaUJFp$n_BhVutf>d!iqMwk&Gl;dK&bQ`ApWrs;wWbr
z{|`KKv{yVD`(gp`01c(0KZ_~@e?N+wK`$TMei4-rMs=j@rASkxltqWK%up&o2#>Rd
zsM4g`ScedTB3mMi8hC3diZ0$6oGUTe97R5lM^dXqXywsb(yWD4BdvrKZ||hV{>66s
zNn^~Pcn?y%qCwCjWq4g&8T^irazuyKl?)*8%RvwoR*)({q0m7E>q>;p3FBHnURt8K
zi4YQm!uy=E=-{lu+MKfJV)A*E@JJPtgis9~wOFyHuF=wCZ9%t_A!S@SXLRt3k>X=B
z3$6b)-|F17n#6b30Qlz{Jl>gx_v%|xMI%xOq*O>1^dhTNJu(A0YkRIMdsb1Yju1q3
zoXPQcq}CX3u~`ee$GH+)w(-s&yu~?(5E`WeV$~*+1yUp=fdgkTUXx`7LyckH@Y>6X
z!az*T%&(taT>Qije)`~>(yaX}9=b2B9M<mS^dW2O25;-6`Pz0`;+(@~8Ad3C)F`D<
zN+N{>A+bUuQ~*NtxFMjl#yg91IVNrO7VJud@F=N3NQBfNCC-+3SKu&ojllUF>M=qn
ztn<`sbzXnjE(RKP(mW>&0~*x|8%JtawNwAFmhx)vnS1eq$Z_ST_nt5ez8pvKHMK}n
zPXz5wL0*&~B~W6^7S33*(%=zjDX~s~RK1AndrVpi5ZIpe2#p9d)@zJ&IAigyz~iva
zW355N0f7>9b2r)Q+8_w*pmU&P2ttsTC25*cmL*3f$64yM*f3l>KMM5&#=2|qOuZ-o
z7TZh50RW+vZ}ioeFi<2)5G0O8mysHaQZX_Ja88hBISvgdoOgI@@ZO_jfRYL+6<!D&
zV4cSqgLMVYS-f{R?|bL@<swWV13lw~T0cJ5S^M<l+*`HM7i+Z?=^**Ni??r4MOkwA
z$YCCT>JUTC3S*-+(#)Qp<>nFV{0-jwy#m3hxRO{cXe5z7As*C|==N%)-&Rc&)i~^h
zJnw0zo_4NrUiQ;V`B*2*&l4gDrRar5>-!9>N1S^kq`%PKV*M%ejaHIsC=W{M&n?Q7
zg~e7c9(hj^#~&OU9{A!&vof&MUSMRP!iC#Lao%%uYKc~-U~;~DtSI~i-P|k{#xmb}
zzUsVc^^g{JWzS1{>Ciy)`isxqj#d@sTN$OX2qCE_l4ivsDRJI?CkTR_l`#CMbA>HU
zjuaj#JkB|cwHRAcnu5}nSZ6tH#P*&t@6v9~Ew&fuD2p5^C91!7v+Tb<b#&sgXD25=
zQB9)V7j7SQI*`mPc3Eg;9G&j4ZT;r4o!htl`_e$GTdZEoyr8(3M4#U}Hk$0%vYD$d
zy_5|j8%Q%~cMI@PjRb+rzH3bO8_s#M!u+{&<_>ELI^7m|p5mNcDW^}zFnqr|6bR5h
zCGcG&_WR)R#`e?ganhZXPh00dH`Gk745awY*_qb9iRm`;EyLB9U%}h1zn0BoWA7iR
zCx0gl)S1VCO4vKtI)BmVVDq|>fhN^T%(l&&*s<*#{`w~m@bKeLcr#ED)i}Ic3f?1y
zpqqARcNPhB@UNn<GHR^7!a0YxIi}|~NF5=i2Ji68{6R<}DF~z^ln(6+a&LU*#Sie}
zv&+vFN=f0stz;*U5b)%YISw73`p!jz&1!vM<ZIVowUZ0BZf2>IGB`M(hMSF#l*ZoD
z&1TOGfLbNQdyf$O;ku!Ls8&sA)M`}1kfJC^Gqcd@l<&9RN5f5S7ee5?$M_!k5mG<l
zMEKq)6nkPVLy4!f2E0WnjRo?&=(z}<NJ~Nq)kva%(n*XD_bc2xaOH~SNTBo{*LNN3
zBj!7bW3wsXxOm6d)xZ9$zrx1#W88Yjk0^}g+)ZO_SUYn5;bYV108gKpDy#&~iNp)u
z76&0wpb5i((pe5Z{Vc^q`wPzd+X~}W6vC{u7#9+R)n4k9;#1X7g-M`D0)>`hB^WMc
zDVYjM!jMpF(jxCIN(OWtv`RzaeBJhF#R*lX76n1p0wmHk@wudiM<Uo<-EhSP=WXGq
zyC31<y$4voc9_9SFXWsJ>za4%{>6?n24LM#LQ&WcWQA=`&ChZ7Lkny@Hp$q?I=_GK
z)U6*`ia-5bHNY(__S1{NScSkZr?BnD`*&y7VVoy5mOu)$R0!co3rlGot*i|~_R^x4
zAUvjDWP(^51j$>Z3h!LzrVc?B%dgp#2#;fCIhB#4nN0JCzH{px+i$=3=j}8vH%6gm
zdUl>D45L7+jb|PM;t+iCAtfbJmIPYx%&}+O{l7f$FMJvNS<O10^cg|l^p`T-cbSzS
z_0D>8IF6ziQyPR67$LC;th1Cpr_))Ww632T6+$Tl5+Nm8DTGi`2=yT${GHE5Y>!7W
z6~shE8`n1v;XQdR)_d}~PqlA(^!H~v>8H=#ICfLBmM}RxN0#MzVa&wY1i`UL$2)}(
zM4_gW78v1uC3g3Ycc!>G5CjOSLeVWG-9n?3Utx|q2;W+*4G;#sSb_lWJl^&4e<nk$
zlPI0{sIn9Y<SJRhzXy0baQm{Wl?d*PMhT2VmYtrDc<_Za*^y(%OeY2SYE~2<K5z4e
z!Fn~ZxBqhQSKHm}hi44H)O_bUyr?MI)A{325r=_mR70Uub45{+!qF-cbXY|Se;joV
zFO*WPM0sZ&&bfZE<S=E?d(%P8^7Mjpjup=QoX-c~|0l2uc&c|#s0f9qts_`C48E6Q
zodBa04sh_)_{`k9zyFh;{dOFM-#c`4^7gZ$!f7sU9Bx+Wq$x#Fl4g#j?oyEE<|9JL
z4;|kgkx>(MVj-T?>(!w!&@0heNP%-6?;H+~R1)DFQi4zdfuJnhNm+jRm#BmPAK>30
zrDkYgP45K=iK&Ei#`pC>IBBZD`Fox^HhGU$ik>UWKFDVPz;JW$(hZ}7oWE@gq1KE~
zPV>yf6uTeWzhj}@Ik9qdT`Eash1GfQH)L5JM`46gJ<$>&d-Xpa;h*a}$i9p%=yiUc
z&kR?9y~=z4UgzC6o)b1bVSN}jK<CI4unMcxN)c$qD(gNy0M$wqY#v+3>vvs3wN_<v
za+>=ddYH!!J-cV2-QoDkLh0xPmM4U`pc2PQNrkf(->1U8VTs-%r4Y#Fg$R$eJy*kv
z=h5N5_AU_WFTx=3LdtKh9OW%hV+66mvp9SBMNLVp3V<>0D@i5#(=<!fvlA2Cao<Bc
zyzd~#W@Zl^Z=O;rqNvu-06kq_Yk9p60)!R_EAh^;JOJgr?{^jZfv=xJrSMpB{JPzW
zt{6oLl`x_bQA^_BKT6y^z|rT9wusSTigJPW>0b5O0MN~gFF$i^>XNOSHhlQt;UnDh
zi^sV3y6dPt`Q%6U@8AEqWuTq4Xl1C?*Ytv%_e5d%x-ir@>&f$;3KZ%9Ar!`W@Zh}b
zn}4tL6|!d$#yf;i1Yw1wQl(L=Q%zzd1>SbBrt7RN(vx$A6oSUkAoE!p^Kt;-z30&b
zPyfp(imz#<=_X@LMF|;Pef8CAr>Cbsv#_vm(+XJKHae*FYkH4&42MySl8PvdK=cTZ
z^A>9j2!VH^9~gV|#yLkAhScj#YDtwOt`G(R0!xuEQ4}q#$;h+LLyN8UTxrbn8XQt8
zWS;jd=`1{9RXrdI1FUnzK{N_J>SWpPZQZ){rW<a!f${P2?j3jBu}w=RwGvdTO^h1F
z_iOtkN%oG7ja?|E#yLk>8k7zwN<*G@F{Z#fht?7$1WE~#C?TmNXsz(xVO@bKx|p&<
zAT4RP&D87+#v0Q}i{I&F#W&7mag``s34+}`Uo{J?3V@Un@B2U)gK>^1ik`aSiYvD4
z+O><HJ@CMfpWOS)8>*F%Ml~Xn8?mB__m(gWpQzQ69nQL*#_t_*B|&(Bk^-eXfew0g
zy%5iF1=mxBtw|~JE@`(#GYJ`P)+q9V*`*ehD8l3OUmke+hHjSM|8f9un)Y}vuq~gG
z=lLJ(+qdu5;o%W=^;K8CIqxohX8g!AH#r}W$OWRt;7U{yzCbF0)PgXop><3z3A$cu
z+dI6s7-z7y#FROC-lfxR(e1QY>a+=!<eZDnV{CX0NgUJ7a*j^TV2p|CN&MYzmTv*F
z(*e+nOKNqg`$aTHZl9l<{rZ7@dq1>k{V+GY`TBo-&yVjqxU{(NpRDN;>$0cnA_lCp
zSd(LIN$yfyn1JgwK8>?j52mzaS-0$_oyAVtp3AcCOj(wX0K0*IlQbLKH?LdE$Y2v=
zElDM2soi0AVTp|+Lu==jI$w3p{&p0oQ@XqmAf*Q{h$BTeb1w-10wsQTc6xmC-o1N%
z^~%>>DX+Zxn*VV3|Gq1qonQJ(^f+M{Z}6VsY7~%!l3F#uIKz>daaw8lkn?^a&$D)x
zb@v%l?lz{_BLs)M_vR#5e0;Ifxp!iAPS+|iVHnWOaynUt$1~WdF*4Bj&4u>TzpGcn
zM@}cL^-B>Vq3LGjnZ*F5)N)FrD9aV!Ng_=gDv~7m_9eS6`}LhWFXgF&2h81f|M(qQ
zQT&bbT(f?7=$`8@zf=s=Yh*=1X$%iMvd=$y@bLST4!<b?Yl}YiJ&D|V-<Qo!*gjLM
z#DB1L{b+T|`gKwQOPvlv2$Yme&drdQ=}*=);y1}NY>(gn==e(qAc-|aVF)U<ufOIs
zmw#aA&YkRe?6K(wcR#p(acODWW#?{v?8Y}-uD$nI=jdiRPaHnV&-OgAnB~Q}gN@2e
zvl`OPEptmLrCV+^+tr?V0C-Kc68-sQ=We+miDEnsB^~W_kxD3BEs5UYy#L{u0C4Ml
z2VeStgg_vqWOi=hcXmJc(0xT|KEHMA){&_#)BpUDM;`gY%;M5xtxk7W9ELsi2MpA!
zoVRJLIp3Q7aS{ffPvYR~BTdQLftcA=&cu8dvpR!W0Djy_^GhB*^vvYiH3Nfd>Y6z8
zR4a;l63I?le0F-F`$JyjcGeb9jROi}S?UyoQAD%ZJa5B>4Ic!)@$kbB?*T4aKRkHn
z&TX64H>y>XQsiaH#OyT9nk6r+wZ^?E4CH<Ewg1Walt&LvW8G;P%xxP-s&C)Cwm~fk
zsa8U=+%P`f%G;^gF2wQl_!RB&qYE$Zh>Q>tDdqllyZy;HUKwB8J3ce_`jLV9K4*P3
z2sByI8>9+@kWN~X=Vf{CBU1`ceXUcRqAwc&6(AaJ#&>OA*LZua5>kyrio!BJ-J+eA
z(Nec~*YraA*FZt9G1^@>R4re%8KLE}R?6jqM;tvmJ$Ik?{zh<U1*3xz)>vAdTuslX
zp8!7FU!Xc!1vw4~-Tyzv`iVfRJc)v+G>#)vEjp<|N<pC1`+x(-ftXLsc9wuSU>4}C
z8?5?QZb+)1b8B%xzw?E$`45Y-b>sTsI&rMA&N4Nh((06GCEvAWU88w;V(D{ddi{lV
zKG#W$LwRm4oL$Pu3WE}oJhuob#!dn-?(d_31r{deI^)1(|M!`9hR$?uq|7=*fnc#y
zsHJW(<UIS6SbK!0-6{GVWkXgNw328kuODt!cAd?ACg!?dZgoprl$NZpEOv9Ob6D$Y
zr#VdlL%=1#6~LO85de=65^D_O<Ks*(<_fqFxMHbOn09I>t$`?zq`6^Yu1jehd1*)s
zBb5|4p3U8kOtlZR(xO!uM?DGIFkE9zEk;XG)lybgI&7!j27t?f4KGs=?78dg+$@Xj
zOaq&azxaXig^$ge?0thO`djm@R7xqS#sNz98YJD^jGgU0jd4rOYB&%mNojk12&JTr
zLiIC~x%{{n+vvafH7C7j4P4aI>Nxh|0T7U;sZP^$h~B4gYk=g0V#K=X*{ST?F7Y=c
zkq#?SuSB-Jo;gA=f7Z8^bXwg4(U;Xq>rhhU&1yK&sGjiU)a<d@&S9Y0f4)sT_i2>`
z#(+6}>Q3$HXNSBe04@gBp6-ETB`=Oc843YeZhAqoFS?Y*?>!rT8){az)Z%D6c#L&)
z^WFf4^VG7!u65o|o?!2_$oI+A!a_Tr>%aNs?}6HYS-m&dXK+eFHF{3o?qsD(bF+--
z2vB>Wr;fDj1WFQW)k~8=Sy~WateH9s0E)E(m5-%`3A5Z1hl)lLf`EmkJo4VZR|vjz
zs*~5$qq+H3{!ssgdEgjeR|R16Xm4GIjx9=Hu)pBtAksW5%}uLTsFio#i!>`KZNDXs
z@I~on&-6OO&C2UaYqtkd(in<x#*yYF#`?baq5nZ)?3Z5PGTF%u(p3S-%av3)2JGk)
zmQ#6)>F>*1+20Gmq=lJ}3zZ2$#rEgir4%S7({4N8+duC3l(kxqj5YQ6jgb}t1j0cS
zD5{kZ>m9QTDGTj<lMtc-oYfars{&9yH%j_K@}dJ4`!e++kOPbkR8CMH0xb_kT3&3O
zr!W>TAkzAlytH@rpJBPN5cC68z3*Pjbh*;*<`>z12FZ=-58nxrSfQ1~Sl?DsES>F_
zH7}F}j`huEsBiv*tB{Q0{{P#+qoV_r*2#iIQQE%<l>Ad6gb1`kz(c@$&)qP<Nz80n
z@;>1!sr^S6biERe*Q?=qftJ1DtA4XJEes2t+z7!RdmLvuD7tzzI5JRq-rr^xGu6-W
zqy4uNu41Z>4>#jyR=ZIW1s{(B^)BG2&iOw=tZu4G$yNO<P;zTE(l;Zybb02?SZ7+@
z;*p8D?jIWKZjbuloN8O_6fYitlfYOu(?)-<03Bfea5G+2sEh(l5@{UZtv_k<<MaUZ
z2BHMc`B1=zJ-jwI_Q|}kH|M3@n`Wjj=gZStz-j>ezX1S<FL&`lKl!r&0000<MNUMn
GLSTY&jaFa)

literal 0
HcmV?d00001

diff --git a/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_thief.png b/game/modules/tome/data/gfx/shockbolt/npc/humanoid_human_thief.png
new file mode 100644
index 0000000000000000000000000000000000000000..c4348941f4e37bb4c345df034b3e849741a4b6df
GIT binary patch
literal 9267
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
V16*J;NO1rF002ovPDHLkV1m~LG6w(v

literal 0
HcmV?d00001

diff --git a/game/modules/tome/data/quests/start-archmage.lua b/game/modules/tome/data/quests/start-archmage.lua
index a78779dfcf..b843a0488b 100644
--- a/game/modules/tome/data/quests/start-archmage.lua
+++ b/game/modules/tome/data/quests/start-archmage.lua
@@ -17,12 +17,18 @@
 -- Nicolas Casalini "DarkGod"
 -- darkgod@te4.org
 
-name = "Unstable!"
+name = "Spellblaze Fallouts"
+stables = 0
 desc = function(self, who)
 	local desc = {}
-	desc[#desc+1] = "Investigate the Abashed Expanse looking for the source of the recent unstability.\n"
+	desc[#desc+1] = "The Abashed Expanse is a part of Eyal torn apart by the Spellblaze and thrown into the void between the stars.\n"
+	desc[#desc+1] = "It has recently begun to destabilize threatening to crash onto Eyal, destroying everything in its path.\n"
+	desc[#desc+1] = "You have entered it and must now stabilize three wormholes by firing any spell at them.\n"
+	desc[#desc+1] = "Remember, the floating islands are not stable and might teleport randomly, however the disturbances also help you, your Phase Door spell is fully controllable even if not of high level yet.\n"
 	if self:isCompleted("abashed") then
-		desc[#desc+1] = "#LIGHT_GREEN#* You have explored the expanse and destroyed the spacial disturbance.#WHITE#"
+		desc[#desc+1] = "#LIGHT_GREEN#* You have explored the expanse and closed all three wormholes.#WHITE#"
+	else
+		desc[#desc+1] = "#SLATE#* You have closed "..self.stables.." wormhole(s).#WHITE#"
 	end
 	return table.concat(desc, "\n")
 end
@@ -35,3 +41,7 @@ on_status_change = function(self, who, status, sub)
 		end
 	end
 end
+
+stabilized = function(self)
+	self.stables = self.stables + 1
+end
diff --git a/game/modules/tome/data/rooms/space_tree_pod.lua b/game/modules/tome/data/rooms/space_tree_pod.lua
new file mode 100644
index 0000000000..67e23498b9
--- /dev/null
+++ b/game/modules/tome/data/rooms/space_tree_pod.lua
@@ -0,0 +1,79 @@
+-- ToME - Tales of Maj'Eyal
+-- Copyright (C) 2009, 2010, 2011 Nicolas Casalini
+--
+-- This program is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program.  If not, see <http://www.gnu.org/licenses/>.
+--
+-- Nicolas Casalini "DarkGod"
+-- darkgod@te4.org
+
+local function check_borders(room_map, x, y, id)
+	local nb = 0
+	local own = false
+	for i = -1, 1 do for j = -1, 1 do
+		if room_map[x+i] and room_map[x+i][y+j] and room_map[x+i][y+j].room == id then
+			nb = nb + 1
+			if i == 0 and j == 0 then own = true end
+		end
+	end end
+	return nb, own
+end
+
+return function(gen, id)
+	local rad = rng.range(2, 4)
+	local mw = 10
+	local mh = 10
+
+	if type(gen.level.data.first_pod) == "nil" then gen.level.data.first_pod = true end
+
+	local is_first = false
+	if gen.level.data.first_pod then
+		gen.level.data.first_pod = false
+		is_first = true
+		mw = 16
+		mh = 16
+		rad = 8
+	end
+
+	local w = rad * 2
+	local h = rad * 2
+	gen.level.pods = gen.level.pods or {}
+	local function make_pod(self, x, y, is_lit)
+		gen:makePod(x + rad + 1, y + rad + 1, rad, id, {noise="fbm_perlin", zoom=5, base_breakpoint=0.4, octave=4})
+		local pod = {}
+		local wormholes = {}
+		for i = x, x + mw do
+			for j = y, y + mh do
+				local nb, own = check_borders(gen.map.room_map, i, j, id)
+				if nb > 0 then pod[#pod+1] = {x=i-x, y=j-y} end
+				if nb >= 4 and own and rng.percent(10) then
+					gen.map(i, j, Map.TERRAIN, gen:resolve('T'))
+				end
+				if is_first and nb >= 5 and own then wormholes[#wormholes+1] = {i,j} end
+			end
+		end
+		if is_first then
+			if #wormholes >= 1 then
+				local g = rng.table(wormholes)
+				gen.map(g[1], g[2], Map.TERRAIN, gen:resolve('wormhole'))
+			else
+				gen.map(x, y, Map.TERRAIN, gen:resolve('wormhole'))
+			end
+		end
+
+		gen.level.pods[#(gen.level.pods)+1] = {x1=x, x2=x+mw, y1=y, y2=y+mh, w=mw, h=mh, pod=pod, dir=rng.table{2,4,6,8}}
+		print(table.serialize(pod,nil,true))
+	end
+
+	return { name="space_tree_prod"..w.."x"..h, w=mw, h=mh, generator = make_pod}
+end
diff --git a/game/modules/tome/data/zones/abashed-expanse/grids.lua b/game/modules/tome/data/zones/abashed-expanse/grids.lua
new file mode 100644
index 0000000000..aef5a90d19
--- /dev/null
+++ b/game/modules/tome/data/zones/abashed-expanse/grids.lua
@@ -0,0 +1,38 @@
+-- ToME - Tales of Maj'Eyal
+-- Copyright (C) 2009, 2010, 2011 Nicolas Casalini
+--
+-- This program is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program.  If not, see <http://www.gnu.org/licenses/>.
+--
+-- Nicolas Casalini "DarkGod"
+-- darkgod@te4.org
+
+load("/data/general/grids/basic.lua")
+load("/data/general/grids/forest.lua")
+load("/data/general/grids/burntland.lua", function(e) if e.image == "terrain/grass_burnt1.png" then e.image = "terrain/grass.png" end end)
+load("/data/general/grids/void.lua")
+
+newEntity{ base="GRASS", define_as = "WORMHOLE", nice_tiler = false,
+	name = "unstable wormhole",
+	display = '*', color = colors.GREY,
+	add_mos = {{image="terrain/wormhole.png"}},
+	damage_project = function(self, src, x, y, type, dam)
+		if type ~= engine.DamageType.PHYSICAL and game.party:hasMember(src) and not self.change_level then
+			self.change_level = 1
+			self.name = "stable wormhole"
+			game.logSeen(src, "#VIOLET#The wormhole absorbs energies and stabilizes. You can now use it to travel.")
+			local q = game.player:hasQuest("start-archmage")
+			if q then q:stabilized() end
+		end
+	end,
+}
diff --git a/game/modules/tome/data/zones/abashed-expanse/npcs.lua b/game/modules/tome/data/zones/abashed-expanse/npcs.lua
new file mode 100644
index 0000000000..5efb16ed70
--- /dev/null
+++ b/game/modules/tome/data/zones/abashed-expanse/npcs.lua
@@ -0,0 +1,65 @@
+-- ToME - Tales of Maj'Eyal
+-- Copyright (C) 2009, 2010, 2011 Nicolas Casalini
+--
+-- This program is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program.  If not, see <http://www.gnu.org/licenses/>.
+--
+-- Nicolas Casalini "DarkGod"
+-- darkgod@te4.org
+
+--load("/data/general/npcs/rodent.lua", rarity(5))
+--load("/data/general/npcs/vermin.lua", rarity(2))
+--load("/data/general/npcs/snake.lua", rarity(3))
+--load("/data/general/npcs/bear.lua", rarity(2))
+load("/data/general/npcs/crystal.lua", rarity(1))
+
+--load("/data/general/npcs/all.lua", rarity(4, 35))
+
+local Talents = require("engine.interface.ActorTalents")
+
+newEntity{ base="BASE_NPC_CRYSTAL", define_as = "SPELLBLAZE_CRYSTAL",
+	allow_infinite_dungeon = true,
+	unique = true,
+	name = "Spellblaze Crystal", tint=colors.PURPLE, image = "npc/spellblaze_crystal.png",
+	color=colors.VIOLET,
+	desc = [[A formation of purple crystal. It seems strangely aware.]],
+	level_range = {7, nil}, exp_worth = 2,
+	max_life = 150, life_rating = 12, fixed_rating = true,
+	mana_regen = 3,
+	stats = { str=10, dex=10, cun=12, mag=20, con=10 },
+	rank = 4,
+	size_category = 4,
+	infravision = 10,
+	instakill_immune = 1,
+
+	body = { INVEN = 10, MAINHAND=1, OFFHAND=1, BODY=1 },
+	resolvers.drops{chance=100, nb=1, {defined="CRYSTAL_FOCUS", random_art_replace={chance=75}} },
+	resolvers.drops{chance=100, nb=3, {tome_drops="boss"} },
+
+	resolvers.talents{
+		[Talents.T_FLAME]=1,
+		[Talents.T_ICE_SHARDS]=1,
+		[Talents.T_SOUL_ROT]=1,
+		[Talents.T_ELEMENTAL_BOLT]=1,
+	},
+	resolvers.inscriptions(1, {"manasurge rune"}),
+	inc_damage = { all = -35 },
+
+	autolevel = "caster",
+	ai = "tactical", ai_state = { talent_in=1, ai_move="move_astar", },
+	ai_tactic = resolvers.tactic"ranged",
+
+	on_die = function(self, who)
+		game.player:resolveSource():setQuestStatus("start-shaloren", engine.Quest.COMPLETED, "spellblaze")
+	end,
+}
diff --git a/game/modules/tome/data/zones/abashed-expanse/objects.lua b/game/modules/tome/data/zones/abashed-expanse/objects.lua
new file mode 100644
index 0000000000..4d33804a72
--- /dev/null
+++ b/game/modules/tome/data/zones/abashed-expanse/objects.lua
@@ -0,0 +1,31 @@
+-- ToME - Tales of Maj'Eyal
+-- Copyright (C) 2009, 2010, 2011 Nicolas Casalini
+--
+-- This program is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program.  If not, see <http://www.gnu.org/licenses/>.
+--
+-- Nicolas Casalini "DarkGod"
+-- darkgod@te4.org
+
+load("/data/general/objects/objects-maj-eyal.lua")
+
+for i = 1, 5 do
+newEntity{ base = "BASE_LORE",
+	define_as = "NOTE"..i,
+	name = "research log", lore="scintillating-caves-note-"..i,
+	desc = [[A paper scrap, left by an adventurer.]],
+	rarity = false,
+	is_magic_device = false,
+	encumberance = 0,
+}
+end
diff --git a/game/modules/tome/data/zones/abashed-expanse/traps.lua b/game/modules/tome/data/zones/abashed-expanse/traps.lua
new file mode 100644
index 0000000000..3b1074cc01
--- /dev/null
+++ b/game/modules/tome/data/zones/abashed-expanse/traps.lua
@@ -0,0 +1,20 @@
+-- ToME - Tales of Maj'Eyal
+-- Copyright (C) 2009, 2010, 2011 Nicolas Casalini
+--
+-- This program is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program.  If not, see <http://www.gnu.org/licenses/>.
+--
+-- Nicolas Casalini "DarkGod"
+-- darkgod@te4.org
+
+load("/data/general/traps/natural_forest.lua")
diff --git a/game/modules/tome/data/zones/abashed-expanse/zone.lua b/game/modules/tome/data/zones/abashed-expanse/zone.lua
new file mode 100644
index 0000000000..909caecd94
--- /dev/null
+++ b/game/modules/tome/data/zones/abashed-expanse/zone.lua
@@ -0,0 +1,228 @@
+-- ToME - Tales of Maj'Eyal
+-- Copyright (C) 2009, 2010, 2011 Nicolas Casalini
+--
+-- This program is free software: you can redistribute it and/or modify
+-- it under the terms of the GNU General Public License as published by
+-- the Free Software Foundation, either version 3 of the License, or
+-- (at your option) any later version.
+--
+-- This program is distributed in the hope that it will be useful,
+-- but WITHOUT ANY WARRANTY; without even the implied warranty of
+-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+-- GNU General Public License for more details.
+--
+-- You should have received a copy of the GNU General Public License
+-- along with this program.  If not, see <http://www.gnu.org/licenses/>.
+--
+-- Nicolas Casalini "DarkGod"
+-- darkgod@te4.org
+
+return {
+	name = "Abashed Expanse",
+	level_range = {1, 5},
+	level_scheme = "player",
+	max_level = 3,
+	decay = {300, 800},
+	actor_adjust_level = function(zone, level, e) return zone.base_level + e:getRankLevelAdjust() + level.level-1 + rng.range(-1,2) end,
+	width = 50, height = 50,
+	all_remembered = true,
+	all_lited = true,
+	persistent = "zone",
+	ambient_music = "World of Ice.ogg",
+	max_material_level = 2,
+	no_level_connectivity = true,
+	force_controlled_teleport = true,
+	projectile_speed_mod = 0.3,
+
+	generator =  {
+		map = {
+			class = "engine.generator.map.Roomer",
+			nb_rooms = 20,
+			no_tunnels = true,
+			rooms = {"space_tree_pod"},
+			['.'] = function() if rng.chance(20) then return "FLOWER" else return "GRASS" end end,
+--			['T'] = {"TREE","TREE2","TREE3","TREE4","TREE5","TREE6","TREE7","TREE8","TREE9","TREE10","TREE11","TREE12","TREE13","TREE14","TREE15","TREE16","TREE17","TREE18","TREE19","TREE20",},
+--			['.'] = {"BURNT_GROUND1","BURNT_GROUND2","BURNT_GROUND3","BURNT_GROUND4",},
+			['T'] = {"BURNT_TREE1","BURNT_TREE2","BURNT_TREE3","BURNT_TREE4","BURNT_TREE5","BURNT_TREE6","BURNT_TREE7","BURNT_TREE8","BURNT_TREE9","BURNT_TREE10","BURNT_TREE11","BURNT_TREE12","BURNT_TREE13","BURNT_TREE14","BURNT_TREE15","BURNT_TREE16","BURNT_TREE17","BURNT_TREE18","BURNT_TREE19","BURNT_TREE20",},
+			['#'] = "VOID_WALL",
+--			up = "GRASS",
+--			down = "GRASS",
+			wormhole = "WORMHOLE",
+			door = "GRASS",
+		},
+		actor = {
+			class = "engine.generator.actor.Random",
+			nb_npc = {10, 15},
+			filters = { {max_ood=2}, },
+			guardian = "SPACIAL_DISTURBANCE",
+		},
+		object = {
+			class = "engine.generator.object.Random",
+			nb_object = {6, 9},
+		},
+		trap = {
+			class = "engine.generator.trap.Random",
+			nb_trap = {6, 9},
+		},
+	},
+
+	next_move = 10,
+	teleport_zones = true,
+	-- Code for teleporting platforms
+	on_turn = function()
+		if game.turn % 10 ~= 0 or not game.level.data.teleport_zones then return end
+		game.level.data.next_move = game.level.data.next_move - 1
+		if game.level.data.next_move <= 0 then
+			game.level.data.next_move = rng.range(4, 12)
+
+			local void = game.zone.grid_list.VOID_WALL
+			local map = game.level.map
+			local pods = table.clone(game.level.pods)
+
+			for __ = 1, 10 do
+			local pod = rng.tableRemove(pods)
+--			print("====== MOVING POD", table.serialize(pod,nil,true))
+			local x, y = pod.x1, pod.y1
+			local nx, ny = rng.range(0, map.w - pod.w), rng.range(0, map.h - pod.h)
+			while true do -- Not a real loop, just a way to break from an if
+				-- Out of bounds
+				if not map:isBound(nx, ny) or not map:isBound(nx+pod.w-1, ny) or not map:isBound(nx, ny+pod.h-1) or not map:isBound(nx+pod.w-1, ny+pod.h-1) then
+					pod.dir = rng.table{2,4,6,8}
+--					print("Break out of bounds")
+					break
+				end
+
+				-- Check collisions
+				local stop = false
+				for i, c in ipairs(pod.pod) do
+					local ncx, ncy = c.x + nx, c.y + ny
+					local g = map(ncx, ncy, map.TERRAIN)
+					if g and not g.is_void then stop = true end
+				end
+
+				if stop then
+					pod.dir = rng.table{2,4,6,8}
+--					print("Break collide")
+					break
+				end
+
+				-- Move!
+				local missing = {}
+				for i, c in ipairs(pod.pod) do
+					local cx, cy = c.x + x, c.y + y
+					missing[cx + cy * map.w] = {x=c.x, y=c.y, es=map.map[cx + cy * map.w]}
+					map.map[cx + cy * map.w] = {}
+					map(cx, cy, map.TERRAIN, void)
+					map:particleEmitter(cx, cy, 1, "teleport_line")
+				end
+				for i, c in pairs(missing) do
+					local ncx, ncy = c.x + nx, c.y + ny
+
+					local es = c.es
+					map.map[ncx + ncy * map.w] = {}
+					map.updateMap = function() end
+					for z, e in pairs(es or {}) do
+						if e.move then e.x = nil e.y = nil e:move(ncx, ncy, true)
+						else map(ncx, ncy, z, e) end
+						if e.x then e.x, e.y = ncx, ncy end
+					end
+					map.updateMap = nil
+					map:updateMap(ncx, ncy)
+					map:particleEmitter(ncx, ncy, 1, "teleport_line")
+				end
+
+				pod.x1, pod.y1 = nx, ny
+				pod.x2, pod.y2 = util.coordAddDir(pod.x2, pod.y2, pod.dir)
+				map:cleanFOV()
+				map.changed = true
+				if rng.percent(10) then pod.dir = rng.table{2,4,6,8} end
+				break -- Never loop
+			end
+			end
+		end
+	end,
+
+
+--[[ Code for moving platforms
+	on_turn = function()
+		if game.turn % 10 ~= 0 then return end
+		game.level.data.next_move = game.level.data.next_move - 1
+		if game.level.data.next_move <= 0 then
+			game.level.data.next_move = 1
+
+			local void = game.zone.grid_list.VOID_WALL
+			local map = game.level.map
+			local pods = table.clone(game.level.pods)
+
+			local pod = rng.tableRemove(pods)
+--			print("====== MOVING POD", table.serialize(pod,nil,true))
+			local x, y = pod.x1, pod.y1
+			local nx, ny = util.coordAddDir(pod.x1, pod.y1, pod.dir)
+			while true do -- Not a real loop, just a way to break from an if
+				-- Out of bounds
+				if not map:isBound(nx, ny) or not map:isBound(nx+pod.w-1, ny) or not map:isBound(nx, ny+pod.h-1) or not map:isBound(nx+pod.w-1, ny+pod.h-1) then
+					pod.dir = rng.table{2,4,6,8}
+					break
+				end
+
+				-- Check collisions
+				local stop = false
+				if pod.dir == 2 then
+					for i = pod.x1, pod.x2 do if map(i, pod.y2 + 1, map.TERRAIN) ~= void then stop = true end end
+				elseif pod.dir == 8 then
+					for i = pod.x1, pod.x2 do if map(i, pod.y1 - 1, map.TERRAIN) ~= void then stop = true end end
+				elseif pod.dir == 6 then
+					for j = pod.y1, pod.y2 do if map(pod.x2 + 1, j, map.TERRAIN) ~= void then stop = true end end
+				elseif pod.dir == 4 then
+					for j = pod.y1, pod.y2 do if map(pod.x1 - 1, j, map.TERRAIN) ~= void then stop = true end end
+				end
+
+				if stop then
+					pod.dir = rng.table{2,4,6,8}
+					break
+				end
+
+				-- Move!
+				local missing = {}
+				for i, c in ipairs(pod.pod) do
+					local cx, cy = c.x + x, c.y + y
+					missing[cx + cy * map.w] = {x=c.x, y=c.y, es=map.map[cx + cy * map.w]}
+					map.map[cx + cy * map.w] = {}
+					map(cx, cy, map.TERRAIN, void)
+				end
+				for i, c in pairs(missing) do
+					local ncx, ncy = c.x + nx, c.y + ny
+
+					local es = c.es
+					map.map[ncx + ncy * map.w] = {}
+					map.updateMap = function() end
+					for z, e in pairs(es or {}) do
+						if e.move then e.x = nil e.y = nil e:move(ncx, ncy, true)
+						else map(ncx, ncy, z, e) end
+						if e.x then e.x, e.y = ncx, ncy end
+					end
+					map.updateMap = nil
+					map:updateMap(ncx, ncy)
+				end
+
+				pod.x1, pod.y1 = nx, ny
+				pod.x2, pod.y2 = util.coordAddDir(pod.x2, pod.y2, pod.dir)
+				map:cleanFOV()
+				map.changed = true
+				if rng.percent(10) then pod.dir = rng.table{2,4,6,8} end
+				break -- Never loop
+			end
+		end
+	end,
+--]]
+
+	post_process = function(level)
+		local Map = require "engine.Map"
+		level.background_particle = require("engine.Particles").new("starfield", 1, {width=Map.viewport.width, height=Map.viewport.height})
+	end,
+
+	background = function(level, x, y, nb_keyframes)
+		local Map = require "engine.Map"
+		level.background_particle.ps:toScreen(x, y, true, 1)
+	end,
+}
-- 
GitLab