I am not posting the Set yet until it's completly fixed, the chasm's well i dont know how to create indiviual occluder(s) for them sorry. If someone could help me or do it would be appreciated. I have just put the (mine_objects.lua) file here for Minmay to look at at see where i need to fix things thxs for your help. I have exported the Set for a real game and it works, well for me though. I saved and loaded a game without problems. I am using the highest graphic settings though. I used the low graphics and the set looks well so,so, but the water can not be seen. On mid grapichs it's much better
Most of the Objects have been moddfied again eg: Occluders and minimalSaveState, Altars fixed, mine_hive fixed. I am am still not sure about the Draw Tile Tool am still working on this.
Please have alook at the lua file below and tell me have I got it right or where to fix things thank you.
I have a round Light that surrounds the torch particle which i dont want and dont know how to get rid of it i just want the Torch Flame. Do i define a new torch fire particle?? Or maybe someone could fix the flame that comes out of the Volcano and Smokers.
I would not have a clue how to make Occluders for each each of the Chasm's so i just used the Occluder:
I know this is wrong, but dont know how to fix it???? The chasm's will need the Occluders incase they are used alot.
--- Extra Props etc.. ---
Code: Select all
---------------------
--- Floor Objects ---
---------------------
--- Fixed Occluder name---
--- Added minimal save state ---
defineObject{
name = "ph_mine_floor_basic",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineFloor04.fbx",
},
{
class = "Occluder",
model = "assets/models/env/dungeon_floor_01_occluder.fbx",
},
},
replacesFloor = true,
placement = "floor",
editorIcon = 136,
minimalSaveState = true,
}
--- Decoration only ---
--- Added minimal save state ---
defineObject{
name = "ph_mine_floor_rocks01",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineFloorRocks01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 136,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_floor_drain",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineFloorGrate01.fbx",
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
replacesFloor = true,
placement = "floor",
editorIcon = 136,
minimalSaveState = true,
}
--------------------
--- Mine Pillars ---
--------------------
--- Added minimal save state ---
defineObject{
name = "ph_mine_wood_pillar",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePillar01.fbx",
},
},
placement = "pillar",
editorIcon = 108,
minimalSaveState = true,
}
--------------------
--- Rocky Pillar ---
--------------------
--- Addition ---
--- Added minimal save state ---
--- Will be deleted from Set ---
---Reach to First Ceiling Level---
defineObject{
name = "ph_mine_rock_pillar_1",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRockPillar_1a.fbx",
},
},
placement = "pillar",
editorIcon = 108,
minimalSaveState = true,
}
---Reach to Second Ceiling Level---
defineObject{
name = "ph_mine_rock_pillar_high_1",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRockPillar_High_1a.fbx",
},
},
placement = "pillar",
editorIcon = 108,
minimalSaveState = true,
}
---Reach to Third Ceiling Level---
defineObject{
name = "ph_mine_rock_pillar_higher_2",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRockPillar_High_1b.fbx",
},
},
placement = "pillar",
editorIcon = 108,
minimalSaveState = true,
}
---------------------
--- Mine Ceilings ---
---------------------
--- Added minimal save state ---
defineObject{
name = "ph_mine_ceiling_basic",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCeiling01.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/catacomb_ceiling_occluder.fbx",
},
},
replacesCeiling = true,
placement = "ceiling",
editorIcon = 100,
minimalSaveState = true,
}
--- Addition for TileSet---
--- Added minimal save state ---
defineObject{
name = "ph_mine_ceiling_rock",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCeiling.fbx",
},
{
class = "Occluder",
model = "assets/models/env/catacomb_ceiling_occluder.fbx",
},
},
replacesCeiling = true,
placement = "ceiling",
editorIcon = 100,
minimalSaveState = true,
}
--- Fixed Shafts with Occluders---
--- Added minimal save state ---
defineObject{
name = "ph_mine_ceiling_shaft",
baseObject = "base_ceiling_shaft",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCeilingShaft01.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/catacomb_ceiling_occluder.fbx",
},
},
minimalSaveState = true,
}
--- Still has no light so I just put another light in and adjust the height ---
defineObject{
name = "ph_mine_ceiling_light_shaft",
baseObject = "base_ceiling_shaft",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCeilingLightShaft.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/catacomb_ceiling_occluder.fbx",
},
},
minimalSaveState = true,
}
--- ceiling edge variations ---
do
for i=1,16 do
local postfix = bit.tobinary(i, 4)
defineObject{
name = "dungeon_ceiling_shaft_"..postfix,
baseObject = "base_ceiling_shaft",
components = {
{
class = "Model",
model = string.format("assets/models/env/dungeon_ceiling_shaft_%s.fbx", postfix),
staticShadow = true,
}
},
minimalSaveState = true,
}
end
end
------------------
--- Mine Walls ---
------------------
--- Added minimal save state ---
defineObject{
name = "ph_mine_wall_basic",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWall01.fbx",
},
{
class = "Occluder",
model = "assets/models/env/dungeon_wall_01_occluder.fbx",
},
},
replacesWall = true,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
--- Addition for TileSet---
--- Added minimal save state ---
defineObject{
name = "ph_mine_wall_rocky",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRockyWall.fbx",
},
{
class = "Occluder",
model = "assets/models/env/dungeon_wall_01_occluder.fbx",
},
},
replacesWall = true,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
-------------------
--- Secret Wall ---
-------------------
defineObject{
name = "ph_mine_secret_door",
baseObject = "base_secret_door",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineSecretWall.fbx",
staticShadow = true,
},
},
}
--------------------------
--- Mine Wall Top Edge ---
--------------------------
--- Addition for TileSet.---
--- Added minimal save state ---
defineObject{
name = "ph_mine_wall_edge_1",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWall01_edge.fbx",
},
},
replacesWall = false,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_wall_edge_floor_levels",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWall01_edge_floor_level.fbx",
},
},
replacesWall = false,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_wall_edge_floor_levelsa",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWall01_edge_floor_levela.fbx",
},
},
replacesWall = false,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
------------------------
--- Mine Walls Decor ---
------------------------
--- Added minimal save state ---
defineObject{
name = "ph_mine_wall_deco01",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWallDeco01.fbx",
},
},
replacesWall = false,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_wall_deco02",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWallDeco02.fbx",
},
},
replacesWall = false,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_wall_deco03",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWallDeco03.fbx",
},
},
replacesWall = false,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_wall_deco04",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWallDeco04.fbx",
},
},
replacesWall = false,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_wall_deco05",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWallDeco05.fbx",
},
},
replacesWall = false,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_wall_deco06",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWallDeco06.fbx",
},
},
replacesWall = false,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
------------------------
--- Mine Work Places ---
------------------------
--- Removed the Occluders from these objects ---
--- Added minimal save state ---
defineObject{
name = "ph_mine_wall_workplace01",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWorkplace01.fbx",
},
},
replacesWall = true,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_wall_workplace02",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWorkplace02.fbx",
},
},
replacesWall = true,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_wall_workplace03",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWorkplace03.fbx",
},
},
replacesWall = true,
placement = "wall",
editorIcon = 92,
minimalSaveState = true,
}
-----------------
--- Mine hive ---
-----------------
--- Changed the Spawn monster and added poison cloud ---
--- Fixed the object for spawnOnDeath ---
defineObject{
name = "ph_mine_hive",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineHive.fbx",
},
{
class = "Obstacle",
hitSound = "spider_eggs_hit",
hitEffect = "hit_goo",
},
{
class = "Health",
health = 15,
immunities = { "poison" },
spawnOnDeath = "ph_mine_hive_broken",
onDie = function(self)
spawn("poison_cloud_large", self.level, self.x, self.y,0,0)
spawn("mosquito_swarm", self.level, self.x, self.y,0,0)
end
},
},
placement = "floor",
editorIcon = 4,
}
--- Added minimal save state. Just a object now ---
defineObject{
name = "ph_mine_hive_broken",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineHiveBroken.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 81,
minimalSaveState = true,
}
------------------------
--- Alcove and Altar ---
------------------------
defineObject{
name = "ph_mine_alcove",
baseObject = "base_alcove",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineAlcove01.fbx",
staticShadow = true,
},
}
}
defineObject{
name = "ph_mine_alcove_wood",
baseObject = "base_alcove",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineAlcove_wood.fbx",
staticShadow = true,
},
}
}
------------------
--- Mine Props ---
------------------
--- Removed minimalSaveState. Because it's Altar ---
defineObject{
name = "ph_mine_table_1",
baseObject = "altar",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineTable01.fbx",
},
{
class = "Obstacle",
hitSound = "barrel_hit",
},
},
placement = "floor",
editorIcon = 52,
}
defineObject{
name = "ph_mine_warning_sign",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWarning.fbx",
},
{
class = "Obstacle",
hitSound = "barrel_hit",
hitEffect = "hit_wood",
},
{
class = "Health",
health = 65,
immunities = { "poison" },
spawnOnDeath = "MineWarningBroken_1",
},
},
placement = "floor",
editorIcon = 120,
}
defineObject{
name = "MineWarningBroken_1",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWarningBroken.fbx",
},
},
placement = "floor",
editorIcon = 120,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_beds_01",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineBeds01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 236,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_beds_02",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineBeds02.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 236,
minimalSaveState = true,
}
--- Addition ---
--- Added minimalSaveState ---
defineObject{
name = "ph_mine_sidewall_rocks",
components = {
{
class = "Model",
model = "mod_assets/models/mine/wall_sidefloor_rocks.fbx",
},
},
placement = "floor",
editorIcon = 92,
minimalSaveState = true,
}
-------------------
--- Mine Crates ---
-------------------
defineObject{
name = "ph_mine_crates_blockage01",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCrates.fbx",
},
{
class = "Health",
health = 50,
spawnOnDeath = "ph_MineCratesBroken",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 260,
}
defineObject{
name = "ph_mine_crates_blockage02",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCrates2.fbx",
},
{
class = "Health",
health = 50,
spawnOnDeath = "ph_MineCratesBroken2",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 260,
}
-------------------------------
--- Broken Crate(s) Objects ---
-------------------------------
defineObject{
name = "ph_MineCratesBroken",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCratesBroken.fbx",
},
},
placement = "floor",
editorIcon = 81,
minimalSaveState = true,
}
defineObject{
name = "ph_MineCratesBroken2",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCratesBroken2.fbx",
},
},
placement = "floor",
editorIcon = 81,
minimalSaveState = true,
}
--- Addition ---
defineObject {
name = "ph_mine_crates_exploding",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCrates_bomb.fbx",
},
{
class = "Health",
health = 30,
spawnOnDeath = "barrel_crate_block_broken",
onDie = function(c)
local i, j;
for i = -1, 1 do
for j = -1, 1 do
if i ~= 0 or j ~= 0 then
spawn("fireburst", c.go.level, c.go.x + i, c.go.y + j, 0, c.go.elevation)
end
end
end
end
}
}
}
---------------------
--- Rock Blocages ---
----------------------
defineObject{
name = "ph_mine_rock_blockage01",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRockFormation01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 261,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_rock_blockage02",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRockFormation02.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 261,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_rock_blockage03",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRockFormation03.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 261,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_rockwaste01",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWaste01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 261,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_rockwaste02",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWaste02.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 261,
minimalSaveState = true,
}
------------------
--- Rail Carts ---
-------------------
defineObject{
name = "ph_mine_cart_rail01",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCart01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 236,
minimalSaveState = true,
}
--- NO minimalSaveState It's a Altar ---
defineObject{
name = "ph_mine_cart_rail01_altar",
baseObject = "altar",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCart01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 52,
}
defineObject{
name = "ph_mine_cart_rail02",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCart02.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 236,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_cart01",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCart03.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 236,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_cart02",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCart04.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 236,
minimalSaveState = true,
}
----------------------
--- Railway Tracks ---
----------------------
defineObject{
name = "ph_mine_rail_2way01",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRail2way02.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 184,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_rail_2way02",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRail2way02.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 184,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_rail_2way03",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRail2way03.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 184,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_rail_corner01",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRailCorner01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 184,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_rail_3way01",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRail3way01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 184,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_rail_endcap01",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineRailEndCap01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 184,
minimalSaveState = true,
}
------------
--- Pits ---
------------
defineObject{
name = "ph_mine_pit_trapdoor",
baseObject = "base_pit_trapdoor",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePit01.fbx",
staticShadow = true,
},
{
class = "Model",
name = "trapDoorModel",
model = "assets/models/env/dungeon_pit_trapdoor.fbx",
materialOverrides = { dungeon_stone_slabs_01 = "MineRock"}, ---tex,override ---
boundBox = { size = vec(3, 2.5, 3) },
},
{
class = "Animation",
model = "trapDoorModel",
animations = {
open = "assets/animations/env/dungeon_pit_trapdoor_open.fbx",
close = "assets/animations/env/dungeon_pit_trapdoor_close.fbx",
},
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
-----------------
--- Cave in's ---
-----------------
--- These are good for ceiling lev = 1 ---
defineObject{
name = "ph_mine_ceiling_cavein",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCeilingCaveIn.fbx",
},
{
class = "Occluder",
model = "assets/models/env/catacomb_ceiling_occluder.fbx",
},
},
replacesCeiling = true,
placement = "ceiling",
editorIcon = 100,
minimalSaveState = true,
}
defineObject{
name = "ph_mine_cavein",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCaveIn.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 144,
minimalSaveState = true,
}
--- Addition ---
--- Allows 2 caveins side by side ---
defineObject{
name = "ph_mine_cavein_wide",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineCaveIn_wide.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 144,
minimalSaveState = true,
}
------------------
--- Wall Texts ---
------------------
defineObject{
name = "ph_mine_wall_text",
baseObject = "base_wall_text",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWallText.fbx",
staticShadow = true,
},
},
replacesWall = true,
}
defineObject{
name = "ph_mine_wall_text_long",
baseObject = "base_wall_text",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWallTextLarge.fbx",
staticShadow = true,
},
},
replacesWall = true,
}
-------------------------
--- Pressure Plate(s) ---
-------------------------
--- Used AH's Animations ---
defineObject{
name = "ph_mine_pressure_plate",
baseObject = "base_pressure_plate",
components = {
{
class = "Model",
model = "assets/models/env/dungeon_pressure_plate.fbx",
materialOverrides = { dungeon_floor_01 = "MineGround"},
staticShadow = true,
},
{
class = "Animation",
animations = {
activate = "assets/animations/env/dungeon_pressure_plate_down.fbx",
deactivate = "assets/animations/env/dungeon_pressure_plate_up.fbx",
},
},
{
class = "Occluder",
model = "assets/models/env/dungeon_floor_01_occluder.fbx",
}
},
}
-----------------
--- Chasms ---
-----------------
--- Dont know to make single Occluders for each one ---
defineObject{
name = "ph_mine_pit_corner_SE",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitSE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_corner_SW",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitSW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_corner_NW",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitNW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_corner_NE",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitNE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
----------------
--- Corneout ---
----------------
defineObject{
name = "ph_mine_pit_cornerout_NE",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitCNE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_cornerout_NW",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitCNW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_cornerout_SE",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitCSE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_cornerout_SW",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitCSW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
-----------------
--- Mine Pits ---
-----------------
defineObject{
name = "ph_mine_pit_N",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitN.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_S",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitS.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_E",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_W",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
--------------------
--- Mine pit End ---
--------------------
defineObject{
name = "ph_mine_pit_end_W",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePit3W.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_end_E",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePit3E.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_end_N",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePit3N.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_pit_end_S",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePit3S.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
---------------------
--- Empty Pits ---
---------------------
--- Occluders removed ---
defineObject{
name = "ph_mine_pit_empty",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitFake.fbx",
staticShadow = true,
},
},
}
defineObject{
name = "ph_mine_shaft_empty",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePitFake.fbx",
staticShadow = true,
},
},
}
-------------------------
--- Extra Mine Shafts ---
-------------------------
defineObject{
name = "ph_mine_shaft_N",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftN.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_S",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftS.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_W",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_E",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
---------------------------
--- Mine Shafts Corners ---
---------------------------
defineObject{
name = "ph_mine_shaft_corner_NE",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftNE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_corner_SW",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftSW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_corner_SE",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftSE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_corner_NW",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftNW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
----------------------
--- Shaft End Caps ---
----------------------
defineObject{
name = "ph_mine_shaft_endcap_N",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaft3N.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_endcap_S",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaft3S.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_endcap_W",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaft3W.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_endcap_E",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaft3E.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
-----------------------
--- Shaft Cornerout ---
-----------------------
defineObject{
name = "ph_mine_shaft_cornerout_NE",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftCNE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_cornerout_NW",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftCNW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_cornerout_SE",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftCSE.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
defineObject{
name = "ph_mine_shaft_cornerout_SW",
baseObject = "base_pit",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineShaftCSW.fbx",
staticShadow = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_pit_occluder.fbx",
},
},
}
----------------------
--- Secret Buttons ---
----------------------
--- Used AH button animation from LOG 1 ---
--- Added the Button Occluders ---
defineObject{
name = "ph_mine_secret_button_large",
baseObject = "wall_button",
components = {
{
class = "Clickable",
size = vec(0.2,0.12,0.2),
offset = vec (0.4, 1.72,0),
--debugDraw = true,
},
{
class = "Model",
model = "mod_assets/models/mine/MineSButtonLarge.fbx",
},
{
class = "Occluder",
model = "assets/models/env/dungeon_secret_button_small_occluder.fbx",
},
{
class = "Animation",
animations = {
press = "mod_assets/animations/mine/temple_secret_button_large_press.fbx"
},
},
},
replacesWall = true,
placement = "wall",
editorIcon = 12,
}
defineObject{
name = "ph_mine_secret_button_small",
baseObject = "wall_button",
components = {
{
class = "Clickable",
size = vec(0.12,0.12,0.2),
offset = vec (-0.2, 1.95,0), --- -0.08,1.95,0 ---
--debugDraw = true,
},
{
class = "Occluder",
model = "assets/models/env/dungeon_secret_button_small_occluder.fbx",
},
{
class = "Model",
model = "mod_assets/models/mine/MineSButtonSmall.fbx",
},
{
class = "Animation",
animations = {
press = "mod_assets/animations/mine/temple_secret_button_small_press.fbx"
},
},
},
replacesWall = true,
placement = "wall",
editorIcon = 12,
}
------------------
--- Mine Doors ---
------------------
--- Have added baseObject = "base_door_sparse", ---
defineObject{
name = "ph_mine_door_portcullis",
baseObject = "base_door_sparse",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePortcullis.fbx",
},
{
class = "Model",
name = "frame",
model = "mod_assets/models/mine/MineDoorframe.fbx",
},
{
class = "Door",
openSound = "gate_open",
closeSound = "gate_close",
lockSound = "gate_lock",
killPillars = true,
openVelocity = 1.3,
closeVelocity = 0,
closeAcceleration = -10,
},
},
}
defineObject{
name = "ph_mine_door_portcullis_rail",
baseObject = "base_door_sparse",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MinePortcullisRail.fbx",
},
{
class = "Model",
name = "frame",
model = "mod_assets/models/mine/MineDoorframe.fbx",
},
{
class = "Door",
openSound = "gate_open",
closeSound = "gate_close",
lockSound = "gate_lock",
killPillars = true,
openVelocity = 1.3,
closeVelocity = 0,
closeAcceleration = -10,
},
},
}
defineObject{
name = "ph_mine_door_wooden",
baseObject = "base_door_sparse",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineWoodDoor.fbx",
},
{
class = "Model",
name = "frame",
model = "mod_assets/models/mine/MineDoorframe.fbx",
},
{
class = "Door",
openSound = "gate_open",
closeSound = "gate_close",
lockSound = "gate_lock",
killPillars = true,
openVelocity = 1.3,
closeVelocity = 0,
closeAcceleration = -10,
},
},
}
defineObject{
name = "ph_mine_door_iron",
baseObject = "base_door_sparse",
components = {
{
class = "Model",
model = "assets/models/env/dungeon_door_iron.fbx",
},
{
class = "Model",
name = "frame",
model = "mod_assets/models/mine/MineDoorframe.fbx",
},
{
class = "Door",
openSound = "gate_open",
closeSound = "gate_close",
lockSound = "gate_lock",
killPillars = true,
openVelocity = 1.3,
closeVelocity = 0,
closeAcceleration = -10,
},
},
}
defineObject{
name = "ph_mine_wall_Grating",
baseObject = "base_door_sparse",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineGrating.fbx",
},
{
class = "Model",
name = "frame",
model = "mod_assets/models/mine/MineDoorframe.fbx",
},
{
class = "Door",
openSound = "gate_open",
closeSound = "gate_close",
lockSound = "gate_lock",
killPillars = true,
openVelocity = 1.3,
closeVelocity = 0,
closeAcceleration = -10,
},
},
}
-----------------
--- Volcano's ---
-----------------
--- Still having problems with the Torch light. ---
--- There is a big round glow which i dont want ---
--- just want the flame particles ---
defineObject{
name = "ph_mine_volcano01_a",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineVolcano01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 261,
}
defineObject{
name = "ph_mine_volcano01",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineVolcano01.fbx",
offset = vec(0, -0.5 + 0, 0, 0.2),
staticShadow = false,
},
{
class = "Particle",
particleSystem = "torch", --l/r u/d b/f
offset = vec(-0.42, 0.73, 0.39), ---- -0.4, 0.73, -1.55
},
},
placement = "floor",
editorIcon = 88,
}
defineObject{
name = "ph_mine_volcano02_a",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineVolcano02.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 261,
}
defineObject{
name = "ph_mine_volcano02",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineVolcano01.fbx",
offset = vec(0, -0.5 + 0, 0, 0.2),
--staticShadow = false,
},
{
class = "Particle",
particleSystem = "torch", --l/r u/d b/f
offset = vec(0.1, 0.8, -0.1), ----0.1, 0.7, -1.6
},
},
placement = "floor", --was wall--
editorIcon = 88,
}
----------------
--- Smoker's ---
----------------
defineObject{
name = "ph_mine_smoker01_a",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineSmoker01.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 261,
}
defineObject{
name = "ph_mine_smoker01",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineVolcano01.fbx",
offset = vec(0, -0.5 + 0, 0, 0.2),
staticShadow = true,
},
{
class = "Light",
offset = vec(0, 1.55, -0.12),
range = 10,
color = vec(0.25, 0.6, 0.5),
brightness = 10,
castShadow = true,
staticShadows = true,
onInit = function(self)
-- optimization: disable casting light behind the wall
local face
if self.go.facing == 2 then
-- disable -Z
face = 5
elseif self.go.facing == 3 then
-- disable -X
face = 1
elseif self.go.facing == 0 then
-- disable +Z
face = 4
elseif self.go.facing == 1 then
-- disable +X
face = 0
end
self:setClipDistance(face, 0)
end,
},
{
class = "Particle",
particleSystem = "ph_mine_smoke_1", --l/r u/d b/f
offset = vec(-0.6, 1.5, -1.9), --- 0.6, 0.7, -0.75
},
},
placement = "wall",
editorIcon = 88,
}
defineObject{
name = "ph_mine_smoker01a",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineVolcano01.fbx",
offset = vec(0, -0.5 + 0, 0, 0.2),
staticShadow = true,
},
{
class = "Light",
offset = vec(0, 1.55, -0.12),
range = 10,
color = vec(0.25, 0.6, 0.5),
brightness = 10,
castShadow = true,
staticShadows = true,
onInit = function(self)
-- optimization: disable casting light behind the wall
local face
if self.go.facing == 2 then
-- disable -Z
face = 5
elseif self.go.facing == 3 then
-- disable -X
face = 1
elseif self.go.facing == 0 then
-- disable +Z
face = 4
elseif self.go.facing == 1 then
-- disable +X
face = 0
end
self:setClipDistance(face, 0)
end,
},
{
class = "Particle",
particleSystem = "ph_mine_smoke_1", --l/r u/d b/f
offset = vec(0.5, 1.5, -0.6), ----0.6, 0.7, -0.75
},
},
placement = "wall",
editorIcon = 88,
}
defineParticleSystem{
name = "ph_mine_smoke_1",
emitters = {
-- smoke
{
emissionRate = 10, --5
emissionTime = 0,
maxParticles = 50,
boxMin = {-0.03, 0.1, -0.03},
boxMax = { 0.03, 0.1, 0.03},
sprayAngle = {0,30},
velocity = {0.1,0.5},
texture = "assets/textures/particles/smoke_01.tga",
lifetime = {1,1.75},
color0 = {0.15, 0.15, 0.15},
opacity = 1,
fadeIn = 0.5,
fadeOut = 0.5,
size = {0.3, 0.6},
gravity = {1,0,0}, --- 0 0 0
airResistance = 0.1,
rotationSpeed = 0.6,
blendMode = "Translucent",
}
}
}
defineObject{
name = "ph_mine_smoker02_a",
baseObject = "base_obstacle",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineSmoker02.fbx",
},
},
replacesFloor = false,
placement = "floor",
editorIcon = 261,
}
defineObject{
name = "ph_mine_smoker02",
components = {
{
class = "Model",
model = "mod_assets/models/mine/MineVolcano01.fbx",
offset = vec(0, -0.5 + 0, 0, 0.2),
staticShadow = true,
},
{
class = "Light",
offset = vec(0, 1.55, -0.12),
range = 10,
color = vec(0.25, 0.6, 0.5),
brightness = 10,
castShadow = true,
staticShadows = true,
onInit = function(self)
-- optimization: disable casting light behind the wall
local face
if self.go.facing == 2 then
-- disable -Z
face = 5
elseif self.go.facing == 3 then
-- disable -X
face = 1
elseif self.go.facing == 0 then
-- disable +Z
face = 4
elseif self.go.facing == 1 then
-- disable +X
face = 0
end
self:setClipDistance(face, 0)
end,
},
{
class = "Particle",
particleSystem = "ph_mine_smoke_1", --l/r u/d b/f
offset = vec(0.17, 1.5, -1.3), ----0.6, 0.7, -0.75
},
},
placement = "wall",
editorIcon = 88,
}
--------------------------
--- Additional Objects ---
--------------------------
--- This may be deleted ---
defineObject{
name = "user_water_surface",
base_object = "water_surface",
components = {
{
class = "WaterSurface",
fogColor = vec(0.021,0.045,0.13,0),
fogDensity = 0.2,
-- There you'll have to modify by -1.4 or 1.4, as you wish
planeY = -0.1, -- was -0.4
reflectionColor = vec(0.693,0.81,0.9,0),
refractionColor = vec(1,1,1,0),
},
{
class = "WaterSurfaceMesh",
material = "water_surface_calm",
underwaterMaterial = "water_surface_underwater",
},
},
placement = "floor",
editorIcon = 264,
}
defineObject{
name = "ph_pick",
baseObject = "base_item",
components = {
{
class = "Model",
model = "mod_assets/models/mine/Pickaxe.fbx",
},
{
class = "Item",
uiName = "Shovel",
description = "This simple but reliable tool is favored by masons, farmers and treasure hunters alike.",
gfxAtlas = "mod_assets/textures/mine/MineItems.tga",
gfxIndex = 15,
impactSound = "impact_blade",
weight = 3,
primaryAction = "dig",
traits = { "usable" },
},
{
class = "DiggingTool",
name = "dig",
uiName = "Dig",
cooldown = 4.5,
},
},
}
defineMaterial{
name = "Pickaxe",
diffuseMap = "mod_assets/textures/mine/Pickaxe_dif.tga",
specularMap = "mod_assets/textures/mine/Pickaxe_spec.tga",
doubleSided = false,
lighting = true,
alphaTest = false,
blendMode = "Opaque",
textureAddressMode = "Wrap",
glossiness = 30,
depthBias = 0,
}