http://www.teamprkl.org/Hitsounds.zip – Download and extract to Painkiller/Data
Hello everyone. Last night I heard that there is nobody working on a chainsmod/minimod-like modification for BooH, so I decided to create the most important part by myself: the hitsounds (well, tbh I copypasted most of the stuff from the old chainsmod).
Anyways, Blowfish asked me to write an article about how I did it, so here goes 🙂
So first, I downloaded the PK .pak extractor, which is posted in the minor news section of this site.
Next step was to extract Boohs LScripts.pak and the old 0.56 Chainsmods .pak files. LScripts.pak contains all the necessary scripts to do you own mods. The language the scripts use is LUA, which has a very simple syntax and is easy to understand if you have coded something else.
After that I started looking up for stuff from both the Boohs and Chainsmods lua-files. Finally I found these lines from Chainsmods Classes/CPlayer.lua:
if Player and Player.ClientID == killerID and (player == nil or player ~= Player) and Cfg.CM_HitSounds then
local hstype = “../../Chains.Mod.Data/Sounds/”..Cfg.CM_HitSound
PlaySound2D(hstype,Cfg.CM_HitSound_Vol,0,1)
After this one, there was some statscripts, which I didnt want to use. Naturally, I wasnt using the Cfg.CM_Hitsound-variables, so I just changed the code to fit in to my plans:
if Player and Player.ClientID == killerID and (player == nil or player ~= Player)
local hstype = “../Hitsounds/hitsound”
PlaySound2D(hstype,100,0,1)
end
Then I added it to the same location (in the CPlayer:Client_OnDamage-function) at the BooHs Classes/CPlayer.lua. After that, I created a few loaders.
LScripts/Loader.lua:
DoFile(“../Data/Hitsounds/Loader.lua”) <- Loads the main loader for Hitsounds-mod.
Hitsounds/Loader.lua:
… original booh Loader.lua stuff …
path = “../Data/Hitsounds/” <- set variable path
DoFile(path..”Classes/CPlayer.lua”) <- load the modified CPlayer.lua
And bang, I was done! I also created a killsound, but youll probably figure that one out, when you compare boohs original CPlayer.lua and the modified.
I didnt get this stuff working inside a .pak-file for some reason, so if anyone knows how to get custom paks working, send me a message.
cubik over and out.