Zandronum Chat on our Discord Server Get the latest version: 3.0
Source Code

View Issue Details Jump to Notes ] Issue History ] Print ]
IDProjectCategoryView StatusDate SubmittedLast Update
0000616Zandronum[All Projects] Suggestionpublic2011-11-05 18:152021-11-28 08:43
Assigned To 
PlatformLinuxOSUbuntuOS Version10.04 x86
Product Version98d 
Target VersionFixed in Version 
Summary0000616: An option for Clientside ammo in Survival/Co-op [hard to describe in the title, read on]
DescriptionInstead of all the players sharing the ammo on the map, each player would get a copy of the ammo on the map that only they could pick up.

When you ran over a clip on the map, you would pick up a clip, but there would still be a clip there for everyone else who didn't pick it up.

If this was implemented, you would have the exact same amount of ammo online as you would offline.
Additional Information~It was a good idea, Carn.
Attached Files

- Relationships
has duplicate 0003922closed Individual player pickups for ammo in Survival/Co-op 

-  Notes
User avatar (0007164)
Watermelon (developer)
2013-09-11 17:32

I'm going to attempt to see if I can create a patch for this.
User avatar (0007170)
Toxicity (reporter)
2013-09-11 18:14

You can do this with a PWAD by replacing ALL pickups with custom actors, but that would be a pain in the ass and wouldn't be compatible with other mods so I agree that this would be useful as a server flag.
User avatar (0007188)
Dark-Assassin (administrator)
2013-09-14 15:32

Having it for all items could be better than just for ammo.
All possibly separated by separate flags.
Just so you can pick your own combination from all 6 main item types. General Items, Weapons, Health, Armor, Ammo and Powerups (Including Runes).

Though, maybe too much item types to separate it all in to separate svars.

Just an idea.
User avatar (0008722)
jam (reporter)
2014-05-06 16:45

This has actually been done in games like Serious Sam's co-op mode. Every client will have it's own pickup and once picked, it won't be there for THAT client but the other clients will still have the pickup unless they pick it up on their own clients.
User avatar (0010093)
Ivan (reporter)
2014-07-30 00:07

I've got a prototype working for a mod I'm making called DnD, where health items have copies of players assigned per player. They can only be picked up by their respective players and seen by them. An approach with similar behavior is the way to go IMO.
User avatar (0010094)
Watermelon (developer)
2014-07-30 02:03

I had an idea of making each Inventory item having a MAXPLAYERS boolean array of who has picked it up, and upon going over it, it is sent to the client who touched it as picked up. Then a check is done where if the player picked it up runs over it, it wont allow any more picking up (and will be invisible on the client).

This would have to be disabled if respawn items is on.
User avatar (0010095)
Popsoap (reporter)
2014-07-30 02:25

Quote from "Watermelon"
I had an idea of making each Inventory item having a MAXPLAYERS boolean array of who has picked it up, and upon going over it, it is sent to the client who touched it as picked up. Then a check is done where if the player picked it up runs over it, it wont allow any more picking up (and will be invisible on the client).

This would have to be disabled if respawn items is on.

I think having a flag that allows for an item to be affected by this would make this more usable. Then a mod could set up items like ammo to respawn, but health to be shared between players.
User avatar (0010101)
ZzZombo (reporter)
2014-08-01 03:37

^ Even more for items that are picked up no matter what (ever played Stronghold when some dick just picks up all the backpacks?). Also, I think that should be rather a property of player structure, because people may join and leave, and their slot number may be taken by another player, so your check would deny newly joined players ammo.
User avatar (0011600)
Dark-Assassin (administrator)
2015-02-05 03:21

^ Then clear the data completely for that Player ID when they leave, if it doesn't already do that. And possibly just the pickup data if they spectate as they pretty much start again anyway.
User avatar (0014411)
Korshun (reporter)
2016-02-10 14:09

This is NOT CLIENTSIDE. The issue should be renamed.

This is SERVERSIDE items that can be picked once and only once by each player. Serious Sam implements this.

It would make coop a lot more fair and eliminate the hassle of deciding who takes which item and make it impossible to take all items for yourself, leaving your teammates with nothing.

This should be a server setting for all items that can be picked up.

"on pickup" triggers should be triggered on the first pickup of the given item, just like in Serious Sam. If one of the players picks up a trapped item, it triggers the trap, the rest of the players can pick up this item without it triggering anything.

There should probably be a decorate flag to exclude an item from this system, if required by some really special item, but I can't think of a use case for such a flag, so, maybe, it isn't really needed.
User avatar (0017065)
Marcaek (reporter)
2017-03-30 04:38

This is a great idea and it's a shame nothing came of it in 6 years
User avatar (0017066)
Filystea (reporter)
2017-03-30 05:43

Please do it as optional.
Not something by default, it is a bad feature.

User avatar (0017067)
Fused (reporter)
2017-03-30 07:19

Please do it as optional.
Not something by default, it is a bad feature.


Well yeah, if you actually read the ticket properly you would have noticed it requested an option, and not something by default.
User avatar (0021828)
Basinga (reporter)
2021-11-10 16:58

Hoping we get this feature. Would help with balancing coop without making it either 1 person grabs everything or having respawning pickups
User avatar (0021838)
arkore (reporter)
2021-11-28 08:43

One time a person approached me about having the functionality for his friend to pickup the same health and ammo as him, essentially having 2 copies of each item for 2 players.

So, I made him a wad that naturally respawns items 2 times for 2 players, using a respawn time of 2 seconds.

I feel that a universal mod can be made by utilizing CVARS and SERVER.CFG.

But, if this behavior is implemented into Zandronum, I would expect it be designed the same way, using respawning, not "stay" ("sv_weaponsstay") behavior. Keep it simple.

Server Variable "sv_itemrespawnlimit" to set as 2 (for 2 players.)
Server Variable "sv_itemrespawntime" to set as 2 (for 2 seconds.) (If Zandronum doesn't decide to set a standard by hardcoding 2.)
9 out of 10 times this would be meet a server owner's needs and expectations.

Or something more specific:
METHOD 0000002:
(based on sv_respawnsuper)
sv_respawnhealth true (default: false)
sv_respawnarmor true (default: false)
sv_respawnammo true (default: false)
sv_respawnhealthlimit 2 // for 2 players (default: 0 for unlimited)
sv_respawnarmorlimit 2 // for 2 players (default: 0 for unlimited)
sv_respawnammolimit 2 // for 2 players (default: 0 for unlimited)
sv_respawnhealthtime 2 // for 2 seconds (default: 0 for unlimited)
sv_respawnarmortime 2 // for 2 seconds (default: 0 for unlimited)
sv_respawnammotime 2 // for 2 seconds (default: 0 for unlimited)
This requires "sv_itemrespawn" to be false, which already is by default.

I'm not in favor of special behavior like "stay" or visible only on their screen, clientside, or whatever. I feel that just complicates things, and even looks complicated in-game for anyone playing or watching. Everyone knows that only weapons have ever had "stay" behavior. Let's not make ammo look weird in-game too when a player runs over it and it doesn't disappear (get picked up). Looks unnatural. Respawning is better. The item can be picked up, everyone can see it be picked up, and the item simply respawns, everyone sees it respawns, and they see and understand what's going on, and players even have the option to let eachother pickup both copies of an item, for that unexpected bonus of flexibility. And less risky to code, or support demo recording.

Issue Community Support
Only registered users can voice their support. Click here to register, or here to log in.
Supporters: ZzZombo Toxicity Lego_CS roman6a Popsoap Shadowlink223 Ivan TerminusEst13 Leonard carpathia Catastrophe President People DevilHunter Argentum WaTaKiD DrinkyBird Razgriz mifu Marcaek StrikerMan780 Daedalus FascistCat Chiasma Monsterovich Combinebobnt Korshun djskaarj JC Tenton MaxRideWizardLord KirovNoir Fused Unknown Basinga
Opponents: Filystea

- Issue History
Date Modified Username Field Change
2011-11-05 18:15 cq75 New Issue
2013-09-11 17:32 Watermelon Note Added: 0007164
2013-09-11 18:14 Toxicity Note Added: 0007170
2013-09-12 07:54 Dusk Assigned To => Watermelon
2013-09-12 07:54 Dusk Status new => assigned
2013-09-14 15:32 Dark-Assassin Note Added: 0007188
2014-05-05 23:04 Watermelon Assigned To Watermelon =>
2014-05-05 23:04 Watermelon Status assigned => new
2014-05-06 16:45 jam Note Added: 0008722
2014-06-15 16:33 Watermelon Status new => acknowledged
2014-07-30 00:07 Ivan Note Added: 0010093
2014-07-30 02:03 Watermelon Note Added: 0010094
2014-07-30 02:25 Popsoap Note Added: 0010095
2014-08-01 03:37 ZzZombo Note Added: 0010101
2015-02-05 03:21 Dark-Assassin Note Added: 0011600
2016-02-10 14:09 Korshun Note Added: 0014411
2017-03-30 04:38 Marcaek Note Added: 0017065
2017-03-30 05:43 Filystea Note Added: 0017066
2017-03-30 07:19 Fused Note Added: 0017067
2021-11-08 22:46 WaTaKiD Relationship added has duplicate 0003922
2021-11-10 16:58 Basinga Note Added: 0021828
2021-11-28 08:43 arkore Note Added: 0021838

Questions or other issues? Contact Us.


Copyright © 2000 - 2021 MantisBT Team
Powered by Mantis Bugtracker