|
Post by Captain Ventris on May 21, 2010 20:03:30 GMT
So, ZDWars is hard to host because of the redonkulous monster count. So, I was thinking about implementing a Population Cap.
How it would work (ideally):
There would be a CVAR that server hosts can set that is the standard per-player max monster count for a 1v1 game (i.e. the highest)
Then that per-player monster count gets scaled down proportional to the number of players in game.
Someone tell me if that's possible, and then how to do it, because it sounds like it'll involve a virgin sacrifice or something.
|
|
|
Post by Minus- on May 21, 2010 20:17:11 GMT
That's a good idea, but... I'm only pro with monsters, and can make weapons and player classes (not pro, but can do them easy). So I can't help there.
|
|
|
Post by Dancso on May 21, 2010 20:24:26 GMT
I believe it would be possible, but might be annoying if you just reach the cap and can't spawn any more monsters.. there's no real way to remove your units once they've been spawned beside getting them killed somehow, but that can only be done by enemies. There was a failed attempt at making something useful by me a long while ago, here skulltag.net/forum/viewtopic.php?f=12&t=22236I just reuploaded the wad file because speedyshare is faggish enough to remove it after like a month or so. www.speedyshare.com/files/22556624/CTFfunctions.wadThe ACS source can be found here: zdoom.pastebin.com/R4Rn7NMcIt makes use of custom CVars, if you have the time, you could take a look at the tutorial i posted in spoiler tag, and how the inner bits of the wad is working. I'm not sure if there's a better way of checking if a CVAR is unset, I just went with checking if they're higher than 0, because "if(cvar == 1)" didn't seem to work. Anyway, you could make an OPEN script that checks for the playercount, and sets a CVAR as the supposed cap. (with the help of yet another cvar) Something like this: Script # OPEN { int cap = getcvar("zdwarspopcap1")/playercount(); consolecommand("zdwarspopcap2 "+cap); } the first cvar wouldn't change over the course of gameplay, this way the server has to only set it on startup, which is easy to do while hosting via IDE or something, there can be custom automated parameters that can set these cvars, you see. The second cvar would change every game, and would be the one that gets checked by the weapons to see if more monsters can fit in there. To see how many monsters a player has, you could use an inventory item for it. [EDIT] okay so, I just realised this whole thing probably won't work out, unless you're willing to do some major changes to the whole mod. You see, it would be hard to detect whose monster just died, so you'd be either stuck with not being able to spawn any more after a while, even if your monsters are dying, or you'd have to implement some hackish code for that, possibly using uservars in decorate code to keep track of whose monster is it, and then again, it might just not be possible.
|
|
|
Post by Captain Ventris on May 21, 2010 20:36:45 GMT
...oh, yeah. That's true, I'd have to do a sickening amount of fiddling with my DECORATE, and have to track the spawned monsters. Bleck.
|
|
Avernus
Meatshield
Barrage Dragon Lover
Posts: 57
|
Post by Avernus on May 21, 2010 22:04:26 GMT
I sense this in the future...
"You must construct additional Pylons"
If you can do this, it will involve A LOT more strategy, well at the loss of epic battles maybe. It can present more interesting pathways, like B****ing structures... lol
|
|
|
Post by $-$lyfox-$ on May 22, 2010 1:42:39 GMT
coughthat'sconstructorwarscough
|
|
|
Post by Dancso on May 22, 2010 8:22:10 GMT
nah, B****ings would ruin the fun. Some maps are just not big enough for it, and then again it would be stupidly hard to track if they've been destroyed or not. duh
|
|
|
Post by Minus- on May 22, 2010 10:11:08 GMT
Leave it to someone else to make.
|
|
|
Post by SoulSucka on May 22, 2010 16:37:04 GMT
Yeah, I would like to see a Population Cap, but only if there is a "kill friendly monster in front of you" button.
|
|
|
Post by Minus- on May 22, 2010 20:40:21 GMT
Cutman has done that in Level Master, aim at the monster and BAM, it also gives you back some mana.
|
|
|
Post by SoulSucka on May 22, 2010 21:32:02 GMT
Yeah, pretty much what I've had in my mind.
|
|
|
Post by Dancso on May 22, 2010 21:41:11 GMT
Stop wondering about it. I know how the basic mechanics of zdoomwars work, and it currently does not allow for detecting whose unit is it really, so our only saviour would be that someone decides to write something hacky for this, but I doubt anyone would take the effort.
|
|
|
Post by Minus- on May 22, 2010 22:05:47 GMT
Yeah, I thought it wouldn't be that simple.
|
|
|
Post by Captain Ventris on May 23, 2010 0:01:52 GMT
It is possible that Banjoster's monster coloring system could be used as a frame to identify whose monsters are who.
|
|
|
Post by Dancso on May 23, 2010 9:52:16 GMT
zdoom.org/wiki/A_SpawnItemExIt seems more like the usage of the flag SXF_TRANSFERTRANSLATION — Transfer Translation: The spawned actor will use the same translation as the parent. I don't think there's a way to be able to directly read off a monster's translation, besides, two players CAN have the same colour, so DUH.
|
|