aha, not quite, as the am16 pack uses the default name for the gamesys - this probably should be changed, as I'm very sure some old fms will not like it.
anyway, to enable the candle mod with this pack installed, create a dark.gam.dml file in the usermods folder (or wherever the pack has been extracted), and paste in the following code;
Code:
DML1
//create archetypes
CreateArch "TorchFlameYellow" "SmallCandleFlame"
{
}
CreateArch "TorchFlameYellow" "LargeCandleFlame"
{
}
CreateArch "TorchFlameYellow" "GiantCandleFlame"
{
}
CreateArch "TorchFlameYellow" "KnockedCandleFlame"
{
}
//lets set up the flame effects, we need small, large, giant, and knocked flames
+ObjProp "SmallCandleFlame" "ParticleGroup"
{
"number of particles" 40
"size of particle" 0.06
}
+ObjProp "SmallCandleFlame" "PGLaunchInfo"
{
"Box Min" -0.02, -0.02, 0
"Box Max" 0.02, 0.02, 0
}
+ObjProp "SmallCandleFlame" "PGLaunchInfo"
{
"Min time" 0.5
"Max time" 0.6
}
+ObjProp "LargeCandleFlame" "ParticleGroup"
{
"number of particles" 40
"size of particle" 0.12
}
+ObjProp "LargeCandleFlame" "PGLaunchInfo"
{
"Min time" 0.6
"Max time" 0.7
}
+ObjProp "GiantCandleFlame" "ParticleGroup"
{
"number of particles" 40
"size of particle" 1.2
}
+ObjProp "GiantCandleFlame" "PGLaunchInfo"
{
"Box Min" -0.4, -0.4, 0
"Box Max" 0.4, 0.4, 0
"Min time" 1.9
"Max time" 2
}
+ObjProp "KnockedCandleFlame" "ParticleGroup"
{
"number of particles" 40
"size of particle" 0.06
"gravity vector" -3, 0, 0
}
+ObjProp "KnockedCandleFlame" "PGLaunchInfo"
{
"Box Min" -0.02, -0.02, 0
"Box Max" 0.02, 0.02, 0
}
+ObjProp "KnockedCandleFlame" "PGLaunchInfo"
{
"Min time" 0.5
"Max time" 0.6
}
//adding scripts for hanging candle activation - this will also add extralight as needed so the candles won't look too dark. receptrons are set up in the gamesys.
+ObjProp -470 "ExtraLight"
{
"Amount (-1..1)" 0.5
}
+ObjProp -470 "Scripts"
{
"Script 0" Extinguishable
"Script 1" NVCreateAndLink
"Don't Inherit" false
}
+ObjProp -470 "DesignNote"
{
"" NVCreateAndLinkOn="Sim"; NVCreateAndLinkCount=1; NVCreateAndLinkCreate="LargeCandleFlame"; NVCreateAndLinkLinkType="~ParticleAttachement"; NVCreateAndLinkLinkData1Field="Type"; NVCreateAndLinkLinkData1Value="1"; NVCreateAndLinkLinkData2Field="vhot #"; NVCreateAndLinkLinkData2Value="1";
}
+ObjProp -470 "CfgTweqModels"
{
"Halt" Stop Tweq
"Rate" 0
"Model 0" hlamp
"Model 5" hlamp
}
+ObjProp -53 "ExtraLight"
{
"Amount (-1..1)" 0.5
}
+ObjProp -53 "Scripts"
{
"Script 0" Extinguishable
"Script 1" NVCreateAndLink
"Script 2" NVCreateAndLink2
"Script 3" NVCreateAndLink3
"Don't Inherit" false
}
+ObjProp -53 "DesignNote"
{
"" NVCreateAndLinkOn="Sim"; NVCreateAndLinkCount=1; NVCreateAndLinkCreate="SmallCandleFlame"; NVCreateAndLinkLinkType="~ParticleAttachement"; NVCreateAndLinkLinkData1Field="Type"; NVCreateAndLinkLinkData1Value="1"; NVCreateAndLinkLinkData2Field="vhot #"; NVCreateAndLinkLinkData2Value="1"; NVCreateAndLink2On="Sim"; NVCreateAndLink2Count=1; NVCreateAndLink2Create="SmallCandleFlame"; NVCreateAndLink2LinkType="~ParticleAttachement"; NVCreateAndLink2LinkData1Field="Type"; NVCreateAndLink2LinkData1Value="1"; NVCreateAndLink2LinkData2Field="vhot #"; NVCreateAndLink2LinkData2Value="2"; NVCreateAndLink3On="Sim"; NVCreateAndLink3Count=1; NVCreateAndLink3Create="SmallCandleFlame"; NVCreateAndLink3LinkType="~ParticleAttachement"; NVCreateAndLink3LinkData1Field="Type"; NVCreateAndLink3LinkData1Value="1"; NVCreateAndLink3LinkData2Field="vhot #"; NVCreateAndLink3LinkData2Value="3";
}
+ObjProp -53 "CfgTweqModels"
{
"Halt" Stop Tweq
"Rate" 0
"Model 0" chdlr
"Model 5" chdlr
}
//adding scripts on the normal candles - this will also add extralight as needed so the candles won't look too dark. receptrons are set up in the gamesys.
+ObjProp -181 "Scripts"
{
"Script 0" NVRelayTrap2
"Don't Inherit" false
}
+ObjProp -181 "DesignNote"
{
"" NVRelayTrap2On="null"; NVRelayTrap2Off="null";
}
+ObjProp -185 "ExtraLight"
{
"Amount (-1..1)" 0.5
}
+ObjProp -185 "Scripts"
{
"Script 0" Extinguishable
"Script 1" NVCreateAndLink
"Script 2" NVRelayTrap3
"Script 3" NVMetaTrap
"Don't Inherit" false
}
+ObjProp -185 "DesignNote"
{
"" NVCreateAndLinkOn="Sim"; NVCreateAndLinkCount=1; NVCreateAndLinkCreate="SmallCandleFlame"; NVCreateAndLinkLinkType="~ParticleAttachement"; NVCreateAndLinkLinkData1Field="Type"; NVCreateAndLinkLinkData1Value="1"; NVMetaTrapOn="WaterStimStimulus"; NVMetaTrapMeta="FrobInert"; NVMetaTrapOff="FireStimStimulus"; NVRelayTrap2On="FrobWorldEnd"; NVRelayTrap2TDest="[Me]"; NVRelayTrap2TOn="[1.0]WaterStim"; NVRelayTrap3On="KOGasStimulus"; NVRelayTrap3TDest="[Me]"; NVRelayTrap3TOn="[1.0]WaterStim"; NVRelayTrap3OnDelay=10;
}
+ObjProp -185 "CfgTweqModels"
{
"Halt" Stop Tweq
"Rate" 0
"Model 0" canstic2
"Model 5" canstic2
}
+ObjProp -185 "FrobInfo"
{
"World Action" Script
}
+ObjProp -184 "ExtraLight"
{
"Amount (-1..1)" 0.5
}
+ObjProp -184 "Scripts"
{
"Script 0" Extinguishable
"Script 1" NVCreateAndLink
"Script 2" NVRelayTrap3
"Script 3" NVMetaTrap
"Don't Inherit" false
}
+ObjProp -184 "DesignNote"
{
"" NVCreateAndLinkOn="Sim"; NVCreateAndLinkCount=1; NVCreateAndLinkCreate="SmallCandleFlame"; NVCreateAndLinkLinkType="~ParticleAttachement"; NVCreateAndLinkLinkData1Field="Type"; NVCreateAndLinkLinkData1Value="1"; NVMetaTrapOn="WaterStimStimulus"; NVMetaTrapMeta="FrobInert"; NVMetaTrapOff="FireStimStimulus"; NVRelayTrap2On="FrobWorldEnd"; NVRelayTrap2TDest="[Me]"; NVRelayTrap2TOn="[1.0]WaterStim"; NVRelayTrap3On="KOGasStimulus"; NVRelayTrap3TDest="[Me]"; NVRelayTrap3TOn="[1.0]WaterStim"; NVRelayTrap3OnDelay=10;
}
+ObjProp -184 "CfgTweqModels"
{
"Halt" Stop Tweq
"Rate" 0
"Model 0" canstick
"Model 5" canstick
}
+ObjProp -184 "FrobInfo"
{
"World Action" Script
}
+ObjProp -183 "ExtraLight"
{
"Amount (-1..1)" 0.5
}
+ObjProp -183 "Scripts"
{
"Script 0" Extinguishable
"Script 1" NVCreateAndLink
"Script 2" NVRelayTrap3
"Script 3" NVMetaTrap
"Don't Inherit" false
}
+ObjProp -183 "DesignNote"
{
"" NVCreateAndLinkOn="Sim"; NVCreateAndLinkCount=1; NVCreateAndLinkCreate="LargeCandleFlame"; NVCreateAndLinkLinkType="~ParticleAttachement"; NVCreateAndLinkLinkData1Field="Type"; NVCreateAndLinkLinkData1Value="1"; NVMetaTrapOn="WaterStimStimulus"; NVMetaTrapMeta="FrobInert"; NVMetaTrapOff="FireStimStimulus"; NVRelayTrap2On="FrobWorldEnd"; NVRelayTrap2TDest="[Me]"; NVRelayTrap2TOn="[1.0]WaterStim"; NVRelayTrap3On="KOGasStimulus"; NVRelayTrap3TDest="[Me]"; NVRelayTrap3TOn="[1.0]WaterStim"; NVRelayTrap3OnDelay=10;
}
+ObjProp -183 "CfgTweqModels"
{
"Halt" Stop Tweq
"Rate" 0
"Model 0" candle2
"Model 5" candle2
}
+ObjProp -183 "FrobInfo"
{
"World Action" Script
}
+ObjProp -182 "ExtraLight"
{
"Amount (-1..1)" 0.5
}
+ObjProp -182 "Scripts"
{
"Script 0" Extinguishable
"Script 1" NVCreateAndLink
"Script 2" NVRelayTrap3
"Script 3" NVMetaTrap
"Don't Inherit" false
}
+ObjProp -182 "DesignNote"
{
"" NVCreateAndLinkOn="Sim"; NVCreateAndLinkCount=1; NVCreateAndLinkCreate="LargeCandleFlame"; NVCreateAndLinkLinkType="~ParticleAttachement"; NVCreateAndLinkLinkData1Field="Type"; NVCreateAndLinkLinkData1Value="1"; NVMetaTrapOn="WaterStimStimulus"; NVMetaTrapMeta="FrobInert"; NVMetaTrapOff="FireStimStimulus"; NVRelayTrap2On="FrobWorldEnd"; NVRelayTrap2TDest="[Me]"; NVRelayTrap2TOn="[1.0]WaterStim"; NVRelayTrap3On="KOGasStimulus"; NVRelayTrap3TDest="[Me]"; NVRelayTrap3TOn="[1.0]WaterStim"; NVRelayTrap3OnDelay=10;
}
+ObjProp -182 "CfgTweqModels"
{
"Halt" Stop Tweq
"Rate" 0
"Model 0" candle1
"Model 5" candle1
}
+ObjProp -182 "FrobInfo"
{
"World Action" Script
}
+ObjProp -1964 "ExtraLight"
{
"Amount (-1..1)" 0.5
}
+ObjProp -1964 "Scripts"
{
"Script 0" Extinguishable
"Script 1" NVCreateAndLink
"Script 2" NVRelayTrap3
"Script 3" NVMetaTrap
"Don't Inherit" false
}
+ObjProp -1964 "DesignNote"
{
"" NVCreateAndLinkOn="Sim"; NVCreateAndLinkCount=1; NVCreateAndLinkCreate="SmallCandleFlame"; NVCreateAndLinkLinkType="~ParticleAttachement"; NVCreateAndLinkLinkData1Field="Type"; NVCreateAndLinkLinkData1Value="1"; NVMetaTrapOn="WaterStimStimulus"; NVMetaTrapMeta="IsLoot"; NVMetaTrapOff="FireStimStimulus"; NVRelayTrap2On="FrobWorldEnd"; NVRelayTrap2TDest="[Me]"; NVRelayTrap2TOn="[1.0]WaterStim"; NVRelayTrap3On="KOGasStimulus"; NVRelayTrap3TDest="[Me]"; NVRelayTrap3TOn="[1.0]WaterStim"; NVRelayTrap3OnDelay=10;
}
+ObjProp -1964 "CfgTweqModels"
{
"Halt" Stop Tweq
"Rate" 0
"Model 0" trcandle
"Model 5" trcandle
}
+ObjProp -1964 "FrobInfo"
{
"World Action" Script
}
//removing isLoot from the goldstick
-MetaProp -1964 -1706
//isLoot must be removed from the -1964 archetype in the gamesys, and all loot candle concretes must be set as loot. also KO gas stim needs to send waterstim to activate the metatrap setup. warning! doused loot candle concretes need to have isLoot added for olddark to work. miss3 1057, 491, 451, miss5 360, 361, miss6 134, 590, miss11 447, 446, 1107, 474, miss15 1242, 486, 1533.
//set up receptrons on HangingLamp to make the extralight setup work
+Receptron -470 "FireStim"
{
Min "0"
Max "None"
Target "Me"
Agent "-470"
Effect "add_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -470 "WaterStim"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -470 "KOGas"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
//set up receptrons on chandelier to make the extralight setup work
+Receptron -53 "FireStim"
{
Min "0"
Max "None"
Target "Me"
Agent "-53"
Effect "add_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -53 "WaterStim"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -53 "KOGas"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
//set up receptrons on Candle+Stick2 to make the extralight setup work
+Receptron -185 "FireStim"
{
Min "0"
Max "None"
Target "Me"
Agent "-185"
Effect "add_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -185 "WaterStim"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -185 "KOGas"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
//set up receptrons on Candle+Stick1 to make the extralight setup work
+Receptron -184 "FireStim"
{
Min "0"
Max "None"
Target "Me"
Agent "-184"
Effect "add_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -184 "WaterStim"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -184 "KOGas"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
//set up receptrons on Candle2 to make the extralight setup work
+Receptron -183 "FireStim"
{
Min "0"
Max "None"
Target "Me"
Agent "-183"
Effect "add_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -183 "WaterStim"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -183 "KOGas"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
//set up receptrons on Candle1 to make the extralight setup work
+Receptron -182 "FireStim"
{
Min "0"
Max "None"
Target "Me"
Agent "-182"
Effect "add_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -182 "WaterStim"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -182 "KOGas"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
//set up receptrons on GoldCStick to make the extralight setup work
+Receptron -1964 "FireStim"
{
Min "0"
Max "None"
Target "Me"
Agent "-1964"
Effect "add_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -1964 "WaterStim"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}
+Receptron -1964 "KOGas"
{
Min "0"
Max "None"
Target "Me"
Effect "rem_prop"
{
"Prop Name" "ExtraLight"
}
}