Page 1 of 1

[minimod] Demon CounterStrike v0.05d: What the heck

Posted: Wed Mar 21, 2018 12:00 am
by Laggy Blazko
Downloads:
http://static.allfearthesentinel.net/wa ... v0.05d.pk3 - Regular version.
http://static.allfearthesentinel.net/wa ... onmenu.pk3 - DCS options are located in the options menu. GZDoom only.
http://static.allfearthesentinel.net/wa ... nomenu.pk3 - DCS options can only be accessed through console. (openmenu dcsmenu)
Spoiler: Changelog (Open)
0.05d
====
Fixed Rocket Launcher spawners. But forgot to update the changelog in the file. Oops.

0.05c
====
Added option to avoid spawning "map bosses". By default, they won't spawn in their maps. IE: Barons won't spawn in E1M8, and Mancubi and Arachnotrons won't spawn in MAP07. Can also be set to never spawn any of those plus cyberdemons and spider masterminds, or always spawn them which might break things.

0.05b
====
Option to flash allies is now serverside. It didn't work online before. Now they flash black online instead but it's better than nothing.

0.05
====
* Monsters and items obeying each others' limit now can be correctly reset.
* Can spawn allies now! (fully disabled by default) Spawned allies can be dogs, marines or even monsters. Be warned: some allies might not work correctly with certain mods, and might block you!
* Can define waves now! Set Wave duration and wave interval.
* Added option for spawned allies to flash blue. Useful to diferentiate ally monsters from enemies.
* "Numbered" menu options now use sliders.
* Added a max killed monsters percentage. If that percentage is reached, things stop spawning until more enemies spawn somehow or its value is changed. Useful for when you actually need to kill everything in a map.
* New spawnable enemy: the... barrel?

0.04
====
* Max monster values now can refer to either total monsters, spawned monsters or percentages.
* Added spawned item limit.
* Added options to stop monsters from spawning when item limits are reached and vice versa.
(NOTE: Since spawns have a small delay, limits will never be exact)
* Added dcs_itemtid cvar, only accesible through console. Spawned items will use its value as their TID so they can be counted. Change its value if you know what you're doing.

0.02
====
* getCVAR being weird fixed. Added #library. Oops.
* Spawners now make a preparation sound before spawning an enemy.
* Added an option to disable everything.
* Added an option to only spawn things away from players... Or only close to them.
* (Probably) fixed things getting stuck.
Spoiler: CVARINFO (Open)

Code: Select all

server bool dcs_disableall = false;

server int dcs_globaldelay = 30;
server int dcs_waveduration = 30;
server int dcs_waveinterval = 0;

server int dcs_maxmonsters = 1000;
server int dcs_maxmonsterstype = 0;
//0 = count all monsters
//1 = count only monsters above initial number
//2 = count as percentage above initial number

server int dcs_maxmonsterstotal = 10000;
server int dcs_maxmonsterstotaltype = 0;
//0 = count all monsters
//1 = count only monsters above initial number
//2 = count as percentage above initial number

server int dcs_maxitems = 2000;
server int dcs_maxallies = 2000;

server bool dcs_monstersobeyitemlimit = false;
server bool dcs_itemsobeymonsterlimit = true;
server bool dcs_alliesobeymonsterlimit = true;

server bool dcs_nodoom2actors = false;
server int dcs_spawnbosses = 1;

server bool dcs_hateplayers = false; //Currently broken.
//Automatically alert monsters shortly after being spawned.

server float dcs_delaymultiplier = 1.0;
server float dcs_itemdelaymultiplier = 1.0;
server float dcs_allydelaymultiplier = 1.0;
server float dcs_chancemultiplier = 1.0;
server float dcs_itemchancemultiplier = 1.0;
server float dcs_allychancemultiplier = 0.0;

server int dcs_spawnerscheckplayers = 0;

//0 = Spawners don't mind players
//1 = Spawners don't spawn things if they can see players next to them.
//2 = Spawners will only spawn next to players.

server int dcs_itemtid = 3144;
//TID to be used by items so they can be counted. Change if it overlaps with other TIDs used in a mod.

server int dcs_hatertid = 3145; //Currently unused, as this feature is broken.
//TID to be used by monsters if dcs_hateplayers is true. Change if it overlaps with other TIDs used in a mod.

server int dcs_allytid = 3146;
//TID to be used by allies so they can be counted. Change if it overlaps with other TIDs used in a mod.

server float dcs_maxkilledpercentage = 0;
//Stops spawning things when this percentage has been killed.
//0 means they won't stop spawning for this.

//Monsters

server int dcs_zombiemandelay = 1;
server float dcs_zombiemanchance = 8.0;

server int dcs_shotgunnerdelay = 20;
server float dcs_shotgunnerchance = 1.0;

server int dcs_chaingunnerdelay = 60;
server float dcs_chaingunnerchance = 0.4;

server int dcs_impdelay = 1;
server float dcs_impchance = 10.0;

server int dcs_demondelay = 30;
server float dcs_demonchance = 1.0;

server int dcs_spectredelay = 30;
server float dcs_spectrechance = 0.5;

server int dcs_lostsouldelay = 30;
server float dcs_lostsoulchance = 1.0;

server int dcs_cacodemondelay = 60;
server float dcs_cacodemonchance = 0.3;

server int dcs_hellknightdelay = 60;
server float dcs_hellknightchance = 0.25;

server int dcs_baronofhelldelay = 120;
server float dcs_baronofhellchance = 0.1;

server int dcs_arachnotrondelay = 60;
server float dcs_arachnotronchance = 0.1;

server int dcs_painelementaldelay = 120;
server float dcs_painelementalchance = 0.1;

server int dcs_revenantdelay = 120;
server float dcs_revenantchance = 1.0;

server int dcs_mancubusdelay = 120;
server float dcs_mancubuschance = 0.1;

server int dcs_archviledelay = 180;
server float dcs_archvilechance = 0.05;

server int dcs_spidermasterminddelay = 300;
server float dcs_spidermastermindchance = 0.02;

server int dcs_cyberdemondelay = 300;
server float dcs_cyberdemonchance = 0.02;

server int dcs_nazidelay = 1;
server float dcs_nazichance = 0.02;

server int dcs_barreldelay = 1;
server float dcs_barrelchance = 0.1;

//Items
server int dcs_healthbonusdelay = 1;
server float dcs_healthbonuschance = 15.0;

server int dcs_armorbonusdelay = 1;
server float dcs_armorbonuschance = 15.0;

server int dcs_greenarmordelay = 30;
server float dcs_greenarmorchance = 0.1;

server int dcs_bluearmordelay = 30;
server float dcs_bluearmorchance = 0.1;

server int dcs_stimpackdelay = 30;
server float dcs_stimpackchance = 0.5;

server int dcs_medikitdelay = 30;
server float dcs_medikitchance = 0.5;

server int dcs_soulspheredelay = 30;
server float dcs_soulspherechance = 0.1;

server int dcs_backpackdelay = 30;
server float dcs_backpackchance = 0.02;

server int dcs_clipdelay = 15;
server float dcs_clipchance = 1.0;

server int dcs_shelldelay = 15;
server float dcs_shellchance = 1.0;

server int dcs_rocketammodelay = 30;
server float dcs_rocketammochance = 0.5;

server int dcs_celldelay = 15;
server float dcs_cellchance = 0.1;

server int dcs_clipboxdelay = 15;
server float dcs_clipboxchance = 0.1;

server int dcs_shellboxdelay = 30;
server float dcs_shellboxchance = 0.1;

server int dcs_rocketboxdelay = 120;
server float dcs_rocketboxchance = 0.05;

server int dcs_cellpackdelay = 120;
server float dcs_cellpackchance = 0.05;

server int dcs_allmapdelay = 300;
server float dcs_allmapchance = 0.01;

server int dcs_berserkdelay = 1;
server float dcs_berserkchance = 0.1;

server int dcs_blurspheredelay = 15;
server float dcs_blurspherechance = 0.5;

server int dcs_infrareddelay = 30;
server float dcs_infraredchance = 0.05;

server int dcs_invulnerabilityspheredelay = 30;
server float dcs_invulnerabilityspherechance = 0.02;

server int dcs_megaspheredelay = 120;
server float dcs_megaspherechance = 0.02;

server int dcs_radsuitdelay = 30;
server float dcs_radsuitchance = 0.1;

server int dcs_shotgundelay = 1;
server float dcs_shotgunchance = 0.05;

server int dcs_supershotgundelay = 60;
server float dcs_supershotgunchance = 0.02;

server int dcs_chaingundelay = 30;
server float dcs_chaingunchance = 0.05;

server int dcs_rocketlauncherdelay = 60;
server float dcs_rocketlauncherchance = 0.02;

server int dcs_plasmarifledelay = 120;
server float dcs_plasmariflechance = 0.01;

server int dcs_bfg9000delay = 300;
server float dcs_bfg9000chance = 0.01;

server int dcs_chainsawdelay = 1;
server float dcs_chainsawchance = 0.02;

//Allies
server int dcs_dogdelay = 1;
server float dcs_dogchance = 0.25;

server int dcs_fistmarinedelay = 1;
server float dcs_fistmarinechance = 0.1;

server int dcs_berserkmarinedelay = 1;
server float dcs_berserkmarinechance = 0.1;

server int dcs_pistolmarinedelay = 1;
server float dcs_pistolmarinechance = 1;

server int dcs_shotgunmarinedelay = 1;
server float dcs_shotgunmarinechance = 0.5;

server int dcs_ssgmarinedelay = 60;
server float dcs_ssgmarinechance = 0.25;

server int dcs_chaingunmarinedelay = 30;
server float dcs_chaingunmarinechance = 0.5;

server int dcs_rocketmarinedelay = 60;
server float dcs_rocketmarinechance = 0.1;

server int dcs_plasmamarinedelay = 120;
server float dcs_plasmamarinechance = 0.1;

server int dcs_railmarinedelay = 120;
server float dcs_railmarinechance = 0.1;

server int dcs_bfgmarinedelay = 300;
server float dcs_bfgmarinechance = 0.02;

server int dcs_chainsawmarinedelay = 1;
server float dcs_chainsawmarinechance = 0.05;

//Friendly Monsters
server int dcs_allyzombiemandelay = 1;
server float dcs_allyzombiemanchance = 0;

server int dcs_allyshotgunnerdelay = 20;
server float dcs_allyshotgunnerchance = 0;

server int dcs_allychaingunnerdelay = 60;
server float dcs_allychaingunnerchance = 0;

server int dcs_allyimpdelay = 1;
server float dcs_allyimpchance = 0;

server int dcs_allydemondelay = 30;
server float dcs_allydemonchance = 0;

server int dcs_allyspectredelay = 30;
server float dcs_allyspectrechance = 0;

server int dcs_allylostsouldelay = 30;
server float dcs_allylostsoulchance = 0;

server int dcs_allycacodemondelay = 60;
server float dcs_allycacodemonchance = 0;

server int dcs_allyhellknightdelay = 60;
server float dcs_allyhellknightchance = 0;

server int dcs_allybaronofhelldelay = 120;
server float dcs_allybaronofhellchance = 0;

server int dcs_allyarachnotrondelay = 60;
server float dcs_allyarachnotronchance = 0;

server int dcs_allypainelementaldelay = 120;
server float dcs_allypainelementalchance = 0;

server int dcs_allyrevenantdelay = 120;
server float dcs_allyrevenantchance = 0;

server int dcs_allymancubusdelay = 120;
server float dcs_allymancubuschance = 0;

server int dcs_allyarchviledelay = 180;
server float dcs_allyarchvilechance = 0;

server int dcs_allyspidermasterminddelay = 300;
server float dcs_allyspidermastermindchance = 0;

server int dcs_allycyberdemondelay = 300;
server float dcs_allycyberdemonchance = 0;

server int dcs_allynazidelay = 1;
server float dcs_allynazichance = 0;


server bool dcs_flashallies = false;


Bored of being lost in a map without anything to shoot? Does that map not have enough monsters or items? Or perhaps you just want to BE FRIGGIN' SURROUNDED AND BEATEN UP?!
Demon CounterStrike is a mod that simply spawns monsters and items around any place you have visited over time. You can customize how often things spawn, or how many seconds after you enter a level they will start spawning. Works on Zandronum and GZDoom.

I know what you're going to ask. "Does it work with Brütal Doom"? Yes, it does. Most gameplay mods should work fine.
Oh, and if your mod edits the main menu, you can access this mod's settings by tying "openmenu dcsmenu" in the console.

Spoiler: Screenshots (Open)
Image
Image
Image
Image
Known Issues:
* Allies don't flash correctly in online Zandronum.
* Boss map detection is far from perfect. It might not work with some mapsets that edit MAPINFO as it detects level number and cluster to identify boss maps.
* In multiplayer, sometimes a player dying results in things stop spawning. Can't figure out why, yet.

Re: [minimod] Demon CounterStrike - Doom except the invasion is not over

Posted: Wed Mar 21, 2018 12:25 am
by The real Apaul27
A gameplay mod that works with other gameplay mods, i'm in!

Re: [minimod] Demon CounterStrike - Doom except the invasion is not over

Posted: Wed Mar 21, 2018 6:02 pm
by Ænima
Neat. I joined a server with this yesterday and wasn’t entirely sure what it was about.

Good idea though. Does it record players’ coordinates constantly and spawn based on that or do players simply drop spawners every so often?

Re: [minimod] Demon CounterStrike - Doom except the invasion is not over

Posted: Wed Mar 21, 2018 6:24 pm
by Laggy Blazko
It records player coordinates in an array, chooses a random one, then an actor moves around a little before spawning something.

Re: [minimod] Demon CounterStrike - Doom except the invasion is not over

Posted: Thu Mar 22, 2018 11:36 pm
by Ænima
Laggy Blazko wrote:
Wed Mar 21, 2018 6:24 pm
It records player coordinates in an array, chooses a random one, then an actor moves around a little before spawning something.
Good idea. However, do you ever have monsters that are stuck or spawn where they shouldn’t? And can AFK players throw off the “weight” of the monster-spawning coordinates (spawning monsters too close to the start area)?

Re: [minimod] Demon CounterStrike v0.02: I suck at scripting

Posted: Fri Mar 23, 2018 5:09 am
by Laggy Blazko
Ænima wrote:
Thu Mar 22, 2018 11:36 pm
Laggy Blazko wrote:
Wed Mar 21, 2018 6:24 pm
It records player coordinates in an array, chooses a random one, then an actor moves around a little before spawning something.
Good idea. However, do you ever have monsters that are stuck or spawn where they shouldn’t? And can AFK players throw off the “weight” of the monster-spawning coordinates (spawning monsters too close to the start area)?
Eeeeh, all players affect the coordinates the same way. And an afk player will probably die quickly, lol. The spawn frequency is directly proportional to the number of active players.
About monsters getting stuck... hopefully this won't happen this time.
Dropbox: https://www.dropbox.com/s/eu6ggrv0v5ekv ... 2.pk3?dl=1
TSPG: http://static.allfearthesentinel.net/wa ... -v0.02.pk3

Re: [minimod] Demon CounterStrike v0.04: Nothing relevant

Posted: Wed Mar 28, 2018 2:43 am
by Laggy Blazko
Dropbox: https://www.dropbox.com/s/f2c31bdrxewhs ... 4.pk3?dl=1
TSPG: http://static.allfearthesentinel.net/wa ... -v0.02.pk3
I wanted to add an option to make monsters automatically hate players by using Thing_Hate(tid, 0, 4) but it didn't work. Oh well...

Re: [minimod] Demon CounterStrike v0.04b: Oops

Posted: Wed Mar 28, 2018 2:27 pm
by Laggy Blazko

Re: [minimod] Demon CounterStrike v0.04b: Oops

Posted: Mon Apr 23, 2018 5:56 pm
by fr blood
I have been playing it on GZDoom with Project Brutality 3.0Beta on Hellbound mappack, and damn this is quit the challenge because the maps are huge and you can be sure that there will always be demons on your path to annoy you making the map very long if you are lost. I have noticed in the custom menu that some options will change their values by 10 instead of 1 as indicated, I precognize you to check again the menudef to fix that problem.
A bit complicated to understand in the first try but when you master it then it becomes a Great mod.

Re: [minimod] Demon CounterStrike v0.04b: Oops

Posted: Tue Apr 24, 2018 4:06 pm
by Ru5tK1ng
Does this work with Hexen? Because Hexen could benefit from some action while you're lost.

Re: [minimod] Demon CounterStrike v0.04b: Oops

Posted: Wed Apr 25, 2018 2:46 am
by Laggy Blazko
No, but people have asked for other games' support so that might happen in the future.
People are free to take this mod and make their own versions, btw.

Re: [minimod] Demon CounterStrike v0.05c: I'm slow, thanks

Posted: Fri May 18, 2018 11:19 pm
by Laggy Blazko
Well, this took more than one week. I wish I could work faster.
So, what's new? Optional allies that might not work with certain mods, barrels that will randomly trap you in corners, a nonreliable way to avoid breaking MAP07, and more!

Made a few not-so-public releases, that's why there's a "c" in this version.
Download:
Dropbox: https://www.dropbox.com/s/bpyevtdfgnyo7 ... c.pk3?dl=1
TSPG: http://static.allfearthesentinel.net/wa ... v0.05c.pk3

Re: [minimod] Demon CounterStrike v0.05c: I'm slow, thanks

Posted: Thu Mar 14, 2019 2:30 am
by TaporGamingBugReport
I'm testing out a Complex Clusterf**k. But. Zombieman and Imps are too common. can we fix this?

Re: [minimod] Demon CounterStrike v0.05c: I'm slow, thanks

Posted: Thu Mar 14, 2019 4:30 pm
by Laggy Blazko
You can reduce their frequency by changing the "dcs_zombiemanchance" and "dcs_impchance" console variables.
(see the CVARINFO spoiler in the first post to see all console variables and their default values)

Re: [minimod] Demon CounterStrike v0.05d: What the heck

Posted: Sun Jun 30, 2019 8:07 am
by Laggy Blazko
It's been more than a year and I just noticed rocket launcher spawners weren't working. What the heck?
It was a small typo, but it's fixed now.

http://static.allfearthesentinel.net/wa ... v0.05d.pk3 - Regular version.
http://static.allfearthesentinel.net/wa ... onmenu.pk3 - DCS options are located in the options menu. GZDoom only.
http://static.allfearthesentinel.net/wa ... nomenu.pk3 - DCS options can only be accessed through console. (openmenu dcsmenu)

I have plans for an actual update but I've been busy finishing University stuff. Maybe in a few weeks.