Custom textures for items/props

Talk about creating Grimrock 1 levels and mods here. Warning: forum contains spoilers!
User avatar
Merethif
Posts: 274
Joined: Tue Apr 24, 2012 1:58 pm
Location: Poland

Custom textures for items/props

Post by Merethif »

I've managed to make some custom texture this week that I'd like to share.
These are mostly things that serve as props/decorations for a dungeon, but shields will also suit well in case of some unique/magic item.

Throwing Hammers. Actually it's a retextured warhammer with new icon, but at least it reminds me of the good old days playing D&D Tower of Doom in the local arcade. Screenshot below shows the differences between warhammer and throwing hammer.

I've made it more powerful but slower then throwing axe to keep consistency with axes/maces logic of LoG. Also, because it's such a heavy weapon it requires some knowledge of throwing techniques to actually use it.
SpoilerShow
Image
Shields. Shield are looking best when placed on "shield hook alcove" that you may find here viewtopic.php?f=14&t=3411&start=150#p36895 (credits to Crisman and Neikun, the shield hook is made almost entirely by mixing their scripts).

So far I've made two textures for round shields and two for heavy shield. Here are three of them:
SpoilerShow
ImageImage
The forth shield texture was made to fit the item which is called Ranger's Shield. The idea behind the Ranger's Shield is to have a shield dedicated to warrior-mages, who would like to backup sword/axe with an occasional spell (think of the ranger), and generally it can be used to open spell menu just like staves and orbs. That's why I tried to give it a more arcane look:
SpoilerShow
Image
Ranger's Shield may be useful for a tank mage as well. Of course in your mod you can use this texture however you like.

Gobelins. I've tried to recreate gobelins from Lands of Lore, either the ones for Gladstone Keep or Roland's Manor:
SpoilerShow
ImageImage
This is how all four gobelins look like compared to original ones form Land of Lore.
SpoilerShow
Image
All above textures and models can be downloaded here: http://ge.tt/6BmHJQP?c (together with icons for shields)
(The texture for round shields are the same as the ones I've posted with "shield hook" post, but icons atlas is updated with heavy shield icon)

Below comes scripts for your convenience.

materials.lua
SpoilerShow

Code: Select all

-- THROWING HAMMER
defineMaterial{
	name = "throwing_hammer",
	diffuseMap = "mod_assets/textures/throwing_hammer_dif.tga",
	specularMap = "mod_assets/textures/throwing_hammer_spec.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = false,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- GREEN GOBELIN
defineMaterial{
	name = "gobelin_green",
	diffuseMap = "mod_assets/textures/gobelin_green_dif.tga",
	specularMap = "assets/textures/env/dungeon_gobelin_spec.tga",
	normalMap = "assets/textures/env/dungeon_gobelin_normal.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = true,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- GREEN GOBELIN TORN
defineMaterial{
	name = "gobelin_green_torn",
	diffuseMap = "mod_assets/textures/gobelin_green_torn_dif.tga",
	specularMap = "assets/textures/env/dungeon_gobelin_torn_spec.tga",
	normalMap = "assets/textures/env/dungeon_gobelin_torn_normal.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = true,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- CRIMSON GOBELIN
defineMaterial{
	name = "gobelin_crimson",
	diffuseMap = "mod_assets/textures/gobelin_crimson_dif.tga",
	specularMap = "assets/textures/env/dungeon_gobelin_spec.tga",
	normalMap = "assets/textures/env/dungeon_gobelin_normal.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = true,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- CRIMSON GOBELIN TORN
defineMaterial{
	name = "gobelin_crimson_torn",
	diffuseMap = "mod_assets/textures/gobelin_crimson_torn_dif.tga",
	specularMap = "assets/textures/env/dungeon_gobelin_torn_spec.tga",
	normalMap = "assets/textures/env/dungeon_gobelin_torn_normal.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = true,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- BLUE GOBELIN
defineMaterial{
	name = "gobelin_blue",
	diffuseMap = "mod_assets/textures/gobelin_blue_dif.tga",
	specularMap = "assets/textures/env/dungeon_gobelin_spec.tga",
	normalMap = "assets/textures/env/dungeon_gobelin_normal.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = true,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- BLUE GOBELIN TORN
defineMaterial{
	name = "gobelin_blue_torn",
	diffuseMap = "mod_assets/textures/gobelin_blue_torn_dif.tga",
	specularMap = "assets/textures/env/dungeon_gobelin_torn_spec.tga",
	normalMap = "assets/textures/env/dungeon_gobelin_torn_normal.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = true,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- UNICORNS GOBELIN
defineMaterial{
	name = "gobelin_unicorns",
	diffuseMap = "mod_assets/textures/gobelin_unicorns_dif.tga",
	specularMap = "assets/textures/env/dungeon_gobelin_spec.tga",
	normalMap = "assets/textures/env/dungeon_gobelin_normal.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = true,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- UNICORNS GOBELIN TORN
defineMaterial{
	name = "gobelin_unicorns_torn",
	diffuseMap = "mod_assets/textures/gobelin_unicorns_torn_dif.tga",
	specularMap = "assets/textures/env/dungeon_gobelin_torn_spec.tga",
	normalMap = "assets/textures/env/dungeon_gobelin_torn_normal.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = true,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- RANGER'S SHIELD
defineMaterial{
name = "ranger_shield",
diffuseMap = "mod_assets/textures/ranger_shield_dif.tga",
specularMap = "mod_assets/textures/ranger_shield_spec.tga",
doubleSided = false,
lighting = true,
alphaTest = false,
blendMode = "Opaque",
textureAddressMode = "Wrap",
glossiness = 20,
depthBias = 0,
}

-- HEAVY SHIELD WITH LION
defineMaterial{
	name = "heavy_shield_lion",
	diffuseMap = "mod_assets/textures/heavy_shield_lion_dif.tga",
	specularMap = "mod_assets/textures/heavy_shield_lion_spec.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = false,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- ROUND SHIELD OF ICE
defineMaterial{
	name = "small_shield_ice",
	diffuseMap = "mod_assets/textures/small_shield_ice_dif.tga",
	specularMap = "assets/textures/items/small_shield_spec.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = false,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}

-- ROUND SHIELD OF FIRE
defineMaterial{
	name = "small_shield_fire",
	diffuseMap = "mod_assets/textures/small_shield_fire_dif.tga",
	specularMap = "assets/textures/items/small_shield_spec.tga",
	doubleSided = false,
	lighting = true,
	alphaTest = false,
	blendMode = "Opaque",
	textureAddressMode = "Wrap",
	glossiness = 20,
	depthBias = 0,
}
objects.lua
SpoilerShow

Code: Select all

-- GREEN GOBELIN
defineObject{
	name = "gobelin_green",
	class = "WallTapestry",
	model = "mod_assets/models/gobelin_green.fbx",
	brokenModel = "mod_assets/models/gobelin_green_torn.fbx",
	placement = "wall",
	editorIcon = 92,
}

-- CRIMSON GOBELIN
defineObject{
	name = "gobelin_crimson",
	class = "WallTapestry",
	model = "mod_assets/models/gobelin_crimson.fbx",
	brokenModel = "mod_assets/models/gobelin_crimson_torn.fbx",
	placement = "wall",
	editorIcon = 92,
}
items.lua
SpoilerShow

Code: Select all

-- WEAPONS
-- THROWING HAMMER
defineObject{
		name = "throwing_hammer",
		class = "Item",
		uiName = "Throwing Hammer",
		model = "mod_assets/models/throwing_hammer.fbx",
		skill = "throwing_weapons",
		requiredLevel = 12,
		gfxAtlas = "mod_assets/textures/custom_icon_atlas.tga",
		gfxIndex = 30,
		throwingWeapon = true,
		attackPower = 17,
		coolDownTime = 6.5,
		attackMethod = "throwAttack",
		attackSound = "swipe",
		impactSound = "impact_blunt",
		stackable = true,
		sharpProjectile = false,
		projectileRotationSpeed = -10,
		projectileRotationZ = 90,
		weight = 0.6,
}

-- SHIELDS

-- RANGER'S SHIELD
defineObject{
		name = "ranger_shield",
		class = "Item",
		uiName = "Ranger's Shield",
		model = "mod_assets/models/ranger_shield.fbx",
		description = "This gilded shield imbued with arcane energies may serve as spell focus for any magic user.",
		gfxAtlas = "mod_assets/textures/custom_icon_atlas.tga",
		gfxIndex = 4,
		attackMethod = "castRuneSpell",
		evasion = 8,
		health = 25,
		weight = 5.0,
		shield = true,
}

-- HEAVY SHIELD WITH LION
cloneObject{
		name = "heavy_shield_lion",
		baseObject = "heavy_shield",
		uiName = "Shield of Lion",
		model = "mod_assets/models/heavy_shield_lion.fbx",
		gfxAtlas = "mod_assets/textures/custom_icon_atlas.tga",
		gfxIndex = 2,
}

-- ROUND SHIELD OF ICE
cloneObject{
	name = "round_shield_ice",
	baseObject = "round_shield",
	uiName = "Shield of Giant Slayer",
	model = "mod_assets/models/small_shield_ice.fbx",
	gfxAtlas = "mod_assets/textures/custom_icon_atlas.tga",
	gfxIndex = 0,
}

-- ROUND SHIELD OF FIRE
cloneObject{
	name = "round_shield_fire",
	baseObject = "round_shield",
	uiName = "Shield of Dragon Slayer",
	model = "mod_assets/models/small_shield_fire.fbx",
	gfxAtlas = "mod_assets/textures/custom_icon_atlas.tga",
	gfxIndex = 1,
}
EDIT 15.10
Throwing hammer added. Note that you will need to upload Custom Icon Atlas anew and replace old one to use it with throwing hammer. The new icon atlas also include lanterns made by Majd and posted on forum some time ago.
EDIT 20.10
Two more LoL inspired gobelins and Ranger Shield added. Note that you will need to upload Custom Icon Atlas anew and replace old one to use it with Ranger's Shield. Also note that all files for previous gobelins (crimson and green) were renamed. A word "dugeon" was delated from all names, so for example now there is "gobelin_green_torn_dif.dds" instead "dungeon_gobelin_green_torn_dif.dds". Scripts were amended to reflect those new files.
Last edited by Merethif on Sun Oct 21, 2012 2:35 pm, edited 6 times in total.
User avatar
Neikun
Posts: 2457
Joined: Thu Sep 13, 2012 1:06 pm
Location: New Brunswick, Canada
Contact:

Re: Custom textures for items/props

Post by Neikun »

Very nice very nice.
I like the introduction of colour to the gobelins!
"I'm okay with being referred to as a goddess."
Community Model Request Thread
See what I'm working on right now: Neikun's Workshop
Lead Coordinator for Legends of the Northern Realms Project
  • Message me to join in!
Batty
Posts: 509
Joined: Sun Apr 15, 2012 7:04 pm

Re: Custom textures for items/props

Post by Batty »

NIce Work! Really like the gobelins.
User avatar
Grimwold
Posts: 511
Joined: Thu Sep 13, 2012 11:45 pm
Location: A Dungeon somewhere in the UK

Re: Custom textures for items/props

Post by Grimwold »

These look really cool in the screenshots.. but I'm having trouble working out how to add them to a dungeon.

I downloaded the 7 DDS files from your link above, and I copied the definitions for materials and items from the alcove thread but I don't think I've put it together properly because the editor complains about missing models when I try to load the dungeon. Anything you can think I might have missed or might be doing wrong?
User avatar
Merethif
Posts: 274
Joined: Tue Apr 24, 2012 1:58 pm
Location: Poland

Re: Custom textures for items/props

Post by Merethif »

Grimwold wrote:These look really cool in the screenshots.. but I'm having trouble working out how to add them to a dungeon.

I downloaded the 7 DDS files from your link above, and I copied the definitions for materials and items from the alcove thread but I don't think I've put it together properly because the editor complains about missing models when I try to load the dungeon. Anything you can think I might have missed or might be doing wrong?
I forgot about models and, also I forgot about torn gobelins textures. And I promise not to post anything after 2 a.m. never again ;-)

Anyway, I've uploaded them now so you may want to download all files again. There should be 9 dds and 7 models. Hope it will be ok now.
I'm adding scripts to first post for your convenience as well.
User avatar
Grimwold
Posts: 511
Joined: Thu Sep 13, 2012 11:45 pm
Location: A Dungeon somewhere in the UK

Re: Custom textures for items/props

Post by Grimwold »

OK, everything works and they look awesome. Thanks for creating and sharing these.
User avatar
crisman
Posts: 305
Joined: Sat Sep 22, 2012 9:23 pm
Location: Italy

Re: Custom textures for items/props

Post by crisman »

You are really good in texturing! :D
User avatar
Merethif
Posts: 274
Joined: Tue Apr 24, 2012 1:58 pm
Location: Poland

Re: Custom textures for items/props

Post by Merethif »

Grimwold wrote:OK, everything works and they look awesome. Thanks for creating and sharing these.
I'm glad to hear that.
crisman wrote:You are really good in texturing! :D
Texturing is easy. I wish I were good at scripting :-)
User avatar
Kuningas
Posts: 268
Joined: Wed Apr 11, 2012 10:29 pm
Location: Northern Finland

Re: Custom textures for items/props

Post by Kuningas »

Merethif wrote:
Grimwold wrote:OK, everything works and they look awesome. Thanks for creating and sharing these.
I'm glad to hear that.
crisman wrote:You are really good in texturing! :D
Texturing is easy. I wish I were good at scripting :-)
I'm equally mediocre at both. : D
BASILEUS
User avatar
Merethif
Posts: 274
Joined: Tue Apr 24, 2012 1:58 pm
Location: Poland

Re: Custom textures for items/props

Post by Merethif »

Since my childhood days spent in local arcade playing D&D Tower of Doom I have a soft spot for Throwing Hammers.
So here they are (files added to the link in the first post. The scripts are also to be found there). Since I was unable to make new model I tried to do my best with texture and icon.

Yea, I've made javelins too, but they are not sexy enough to share them ;-)
Post Reply