View Issue Details

IDProjectCategoryView StatusLast Update
0006641The Dark ModScript/Defpublic30.08.2025 16:01
ReporterTaffingtaffer Assigned To 
PrioritynormalSeveritynormalReproducibilityalways
Status newResolutionopen 
OSLinux 
Product VersionTDM 2.13 
Summary0006641: Blackjack hit sounds are inconsistent and propagation barely makes a difference
DescriptionThere are many missing material definitions for the blackjack in tdm_weapon_blackjack.def.
In addition, anything that isn't defined plays the "blackjack_hit_helmet" sound shader, despite the default definition, snd_hit, having "blackjack_hit_wood" assigned. This leads to grass, straw or carpet making metal hit sounds, which is just plain silly.

Figuring out why snd_hit doesn't work should be the first step. Afterwards, all existing materials would be defined and assigned with fitting sound shaders. (attached a cleaned-up .def as a temporary solution for the hit sounds we have right now)
Finally, create several propagations with different degrees of loudness depending on the material. Currently metal is as loud as stone, for example...
Tagsalert, audio, sound
Attached Files
tdm_weapon_blackjack.def (5,728 bytes)   
// vim:ts=4:sw=4:cindent
//
// ======================== Blackjack ==================================
//

entityDef atdm:weapon_blackjack
{
    "inherit"				"atdm:weapon_base"

	"editor_usage"          "The thief's best friend"
    "editor_displayFolder"  "Weapons/Melee"

	"model_view" 			"viewmodel_blackjack"
    
    // a unique weapon name, used by ammunition entities
    "inv_weapon_name"       "blackjack" 

    // The display name of this weapon (for the HUD)
    "inv_name"              "#str_02428"		// Blackjack
    "inv_icon"              "guis/assets/hud/weapon_icons/blackjack_icon"

    "model"                 "models/darkmod/weapons/blackjack.lwo"
    "spawnclass"            "idMoveable"
    "frobable"              "1"

	"is_weapon_melee"		"1"

    "ammo_required"         "0" // doesn't need no ammo

    "weapon_scriptobject"   "weapon_blackjack"

    "def_melee"				"melee_blackjack_ovr"
	"melee_distance"		"56"
	"knockout_range"		"28"
	"KO_box_size"			"4"

	"anim_rate_hit"	"2.0"

    // Collision test object for new melee system
	"def_attach1"			"atdm:attachment_meleetest_blackjack"
	"name_attach1"			"meleeweap_r"

    "attach_pos_name_test1"			"mtest"
	"attach_pos_joint_test1"		"r_wrist"
	"attach_pos_origin_test1"		"10 0 0"
	"attach_pos_angles_test1"		"0 0 0"

   	"impact_damage_effect"			"1"

    // Try always playing a swing sound when we swing, regardless of hit or not later
	"snd_swing"				"blackjack_swing"
	"snd_acquire"			"tool_pickup"
	"skin_invisible"		"skins/blackjack_invis"
}


entityDef melee_blackjack_ovr 
{
	"inherit"			"atdm:damage_base"
	"damage"			"2"
	"knockout"			"1"
	"kickDir"			"-1 0 0"

	"mtr_blob"			"genericDamage"
	"blob_time"			"300"
	"blob_size"			"400"
	"blob_offset_x"			"400"

	"knockback"			"10"
	"push"			"2200"

	"gib"				"0"

	"kick_time"			"400"
	"kick_amplitude"		"1"

	"dv_time"			"100"

	// NOTE: This is moved from the weapon spawnargs to the damage spawnargs!
	"impact_damage_effect"	"1"

	"no_pain_anim"		"1"

	// default surface type if we cannot detect surface type hit
	"default_surface_inanimate"	"wood"
	"default_surface_actor"		"flesh"

	// default sound
	"snd_hit"			"blackjack_hit_wood"

	"snd_metal"			"blackjack_hit_helmet"

	"snd_liquid"			"melee_hit_water"

	"snd_ice"			"glass_bullethole"
	"snd_glass"			"glass_bullethole"
	"snd_brokeglass"		"glass_bullethole"

	"snd_stone"			"blackjack_hit_wood"
	"snd_wood"			"blackjack_hit_wood"
	"snd_tile"			"blackjack_hit_wood"
	"snd_dirt"			"blackjack_hit_wood"
	"snd_sand"			"blackjack_hit_wood"
	"snd_gravel"			"blackjack_hit_wood"
	"snd_paper"			"blackjack_hit_wood"
	"snd_twigs"			"blackjack_hit_wood"
	"snd_squeakboard"	"blackjack_hit_wood"
	"snd_plastic"			"blackjack_hit_wood"
	"snd_cardboard"		"blackjack_hit_wood"

	"snd_grass"			"blackjack_hit_flesh"
	"snd_foliage"			"blackjack_hit_flesh"
	"snd_straw"			"blackjack_hit_flesh"
	"snd_mud"			"blackjack_hit_flesh"
	"snd_snow"			"blackjack_hit_flesh"
	"snd_carpet"			"blackjack_hit_flesh"
	"snd_moss"			"blackjack_hit_flesh"
	"snd_ricochet"		"blackjack_hit_flesh"
	"snd_flesh"			"blackjack_hit_flesh"
	"snd_undeadflesh"	"blackjack_hit_flesh"

	// probably don't want it to alert other AI 
	// for successful hits on helmet AI
	"snd_armor_plate"		"blackjack_hit_helmet"
	"snd_armor_chain"		"blackjack_hit_flesh"
	"snd_armor_leath"		"blackjack_hit_flesh"
	"snd_cloth"				"blackjack_hit_flesh"

	// Propagated sounds for hitting objects other than flesh
	"sprS_metal"		"blackjack_hit_hard"
	"sprS_ricochet"	"blackjack_hit_hard"
	"sprS_stone"		"blackjack_hit_hard"
	"sprS_wood"		"blackjack_hit_hard"
	"sprS_glass"		"blackjack_hit_hard"
}

model viewmodel_blackjack {
	mesh			models/md5/weapons/blackjack_view/blackjack.md5mesh
	offset			(-10 0 -6.5 )

	anim raise		models/md5/weapons/blackjack_view/get.md5anim {
		frame	1		sound_weapon blackjack_unsheath
	}

	anim idle 			models/md5/weapons/blackjack_view/idle.md5anim
	anim hit_start 		models/md5/weapons/blackjack_view/swing_start.md5anim

	anim hit 			models/md5/weapons/blackjack_view/swing_16frames.md5anim
	{
		frame 6 sound snd_swing
		//frame 9 melee_attack_start meleeweap_r overhead
		//frame 17 melee_attack_stop meleeweap_r
		frame 9 melee_knockout

		// release 1.0 and old animation values:
		// frame 3 sound snd_swing
		// frame 4 melee_attack_start meleeweap_r overhead
		// frame 7 melee_attack_stop meleeweap_r
	}

	anim putaway 		models/md5/weapons/blackjack_view/putaway.md5anim {
		frame 1			sound_weapon blackjack_sheath
	}
	anim ready			models/md5/weapons/blackjack_view/ready10.md5anim
	anim unready		models/md5/weapons/blackjack_view/unready10.md5anim
}

// new melee system
entityDef atdm:attachment_meleetest_blackjack
{
	"inherit"	"atdm:moveable_longsword"
	"spawnclass" "CMeleeWeapon"
	"joint"		"r_wrist"
	// release 1.0 values
	// "angles"	"-90 0 -65"
	// attempted fix for hitting ceiling:
	"angles"	"-75 0 -70"
	"origin"	"16 0 0"

	"hide"		"1"
	"solid"		"0"
	"frobable"	"0"
	"neverShow" "1" // grayman #2998 - never show this entity
	"noshadows" "1" // grayman #2998

	// set this to swap in the larger AI head CMs for easier KOs
	"use_larger_ai_head_CMs"	"1"

	"att_type_overhead" 		"0"
	"att_world_collide_overhead"	"1"
	"def_damage_overhead"		"melee_blackjack_ovr"
	"att_mod_cm_overhead"		"1"
	// release 1.0 values:
	// "att_cm_maxs_overhead"		"2.5 29 2.5"
	// fix for hitting the ceiling
	// (it got shorter to offset the tilt forward)
	"att_cm_maxs_overhead"		"2.5 27 5"
	"att_cm_mins_overhead"		"-2.5 5 -5"

	// Failsafe trace, going thru center pointing "down"
	// for fixing buggy trace when CM starts out intersecting
	"att_failsafe_trace_overhead"		"1"
	"att_failsafe_trace_start_overhead"	"-15 18 0"
	"att_failsafe_trace_end_overhead"	"12 18 0"
}
tdm_weapon_blackjack.def (5,728 bytes)   

Activities

Issue History

Date Modified Username Field Change
30.08.2025 16:01 Taffingtaffer New Issue
30.08.2025 16:01 Taffingtaffer Tag Attached: alert
30.08.2025 16:01 Taffingtaffer Tag Attached: audio
30.08.2025 16:01 Taffingtaffer Tag Attached: sound
30.08.2025 16:01 Taffingtaffer File Added: tdm_weapon_blackjack.def