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

Maps, modifications, add-ons, projects, and other releases for Zandronum. Also includes announcers.
Post Reply
Laggy Blazko
Forum Regular
Posts: 291
Joined: Tue Jun 05, 2012 3:00 pm
Location: Heck no

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

#1

Post by Laggy Blazko » Wed Mar 21, 2018 12:00 am

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.
Last edited by Laggy Blazko on Sun Jun 30, 2019 8:07 am, edited 8 times in total.

User avatar
The real Apaul27
New User
Posts: 6
Joined: Sat Nov 25, 2017 11:03 pm

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

#2

Post by The real Apaul27 » Wed Mar 21, 2018 12:25 am

A gameplay mod that works with other gameplay mods, i'm in!

Ænima
Addicted to Zandronum
Posts: 3470
Joined: Tue Jun 05, 2012 6:12 pm
Location: Shpongleland

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

#3

Post by Ænima » Wed Mar 21, 2018 6:02 pm

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?
Image ­ ­
­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­
Doom64: Unabsolved: Doom64 and Diablo2 had a baby


ZandroSkins
: a pack made by our community
Squad Radio: a WASD-powered chat menu, add your own sounds
AeniPuffs: neat blood and puff effects

Laggy Blazko
Forum Regular
Posts: 291
Joined: Tue Jun 05, 2012 3:00 pm
Location: Heck no

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

#4

Post by Laggy Blazko » 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.

Ænima
Addicted to Zandronum
Posts: 3470
Joined: Tue Jun 05, 2012 6:12 pm
Location: Shpongleland

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

#5

Post by Ænima » 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)?
Image ­ ­
­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­ ­
Doom64: Unabsolved: Doom64 and Diablo2 had a baby


ZandroSkins
: a pack made by our community
Squad Radio: a WASD-powered chat menu, add your own sounds
AeniPuffs: neat blood and puff effects

Laggy Blazko
Forum Regular
Posts: 291
Joined: Tue Jun 05, 2012 3:00 pm
Location: Heck no

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

#6

Post by Laggy Blazko » Fri Mar 23, 2018 5:09 am

Æ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

Laggy Blazko
Forum Regular
Posts: 291
Joined: Tue Jun 05, 2012 3:00 pm
Location: Heck no

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

#7

Post by Laggy Blazko » Wed Mar 28, 2018 2:43 am

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...

Laggy Blazko
Forum Regular
Posts: 291
Joined: Tue Jun 05, 2012 3:00 pm
Location: Heck no

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

#8

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


User avatar
fr blood
Frequent Poster Miles card holder
Posts: 984
Joined: Wed Mar 06, 2013 4:04 pm
Location: France

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

#9

Post by fr blood » Mon Apr 23, 2018 5:56 pm

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.

User avatar
Ru5tK1ng
Posts a lot
Posts: 772
Joined: Fri Jun 01, 2012 9:04 pm

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

#10

Post by Ru5tK1ng » Tue Apr 24, 2018 4:06 pm

Does this work with Hexen? Because Hexen could benefit from some action while you're lost.

Laggy Blazko
Forum Regular
Posts: 291
Joined: Tue Jun 05, 2012 3:00 pm
Location: Heck no

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

#11

Post by Laggy Blazko » Wed Apr 25, 2018 2:46 am

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.

Laggy Blazko
Forum Regular
Posts: 291
Joined: Tue Jun 05, 2012 3:00 pm
Location: Heck no

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

#12

Post by Laggy Blazko » Fri May 18, 2018 11:19 pm

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

TaporGamingBugReport
 
Posts: 49
Joined: Mon Apr 30, 2018 9:00 am
Clan: DoomBreakerMadness
Clan Tag: doombreakermdnss

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

#13

Post by TaporGamingBugReport » Thu Mar 14, 2019 2:30 am

I'm testing out a Complex Clusterf**k. But. Zombieman and Imps are too common. can we fix this?

Laggy Blazko
Forum Regular
Posts: 291
Joined: Tue Jun 05, 2012 3:00 pm
Location: Heck no

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

#14

Post by Laggy Blazko » Thu Mar 14, 2019 4:30 pm

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)

Laggy Blazko
Forum Regular
Posts: 291
Joined: Tue Jun 05, 2012 3:00 pm
Location: Heck no

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

#15

Post by Laggy Blazko » Sun Jun 30, 2019 8:07 am

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.

Post Reply