Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Spawning on squadmates not blocked #576

Closed
cat24max opened this issue Dec 27, 2020 · 7 comments
Closed

Spawning on squadmates not blocked #576

cat24max opened this issue Dec 27, 2020 · 7 comments
Assignees
Labels

Comments

@cat24max
Copy link

cat24max commented Dec 27, 2020

I was told this also happens in TDM, but my experience is coming from Rush:

When the Defenders loose a base, squadmates should not be able to spawn on teammates that are in the new attacker base. They should only be able to spawn on a teammate that is in the defender base or close too it.

This is a massive issue in regards to balance, because this limitation is intended to slow spawnrape.

Steps to reproduce:

  1. You need two players, load up Damavand Peak Rush and both join Defenders.
  2. Player 1 should move in the direction of attacker spawn.
  3. Player 2 should not be able to spawn once Player 1 gets too far away from the base.
  4. Player 2 is able to spawn.
@FlashHit
Copy link

FlashHit commented Dec 30, 2020

Repro in TDM is even faster I guess.

2022-02-13-1609-33.mp4

@kiwidoggie kiwidoggie self-assigned this Jan 9, 2021
@kiwidoggie
Copy link

Think #559 is related, will ask you to re-test when the new build is out.

@kiwidoggie kiwidoggie added the bug label Jan 9, 2021
@cat24max
Copy link
Author

@kiwidoggie I don't think this is solved

@FlashHit
Copy link

FlashHit commented Jan 27, 2021

I kinda think that it's the AutoTeamEntity which has a DisableAllowedToSpawnOn event. This doesn't get triggered on Conquest but it does in TDM. The problem is that it does nothing. The AutoTeamEntityData has also some properties like .rotateTeamOnNewRound = true which did nothing when I set it to false.
Might be wrong and this is not relevant, but just in case that this could be related, here is my script:

Events:Subscribe('Level:Loaded', function()
	local s_AutoTeamEntityIterator = EntityManager:GetIterator("ServerAutoTeamEntity")
	local s_AutoTeamEntity = s_AutoTeamEntityIterator:Next()
	
	while s_AutoTeamEntity do
		s_AutoTeamEntity = Entity(s_AutoTeamEntity)
		s_AutoTeamEntity:RegisterEventCallback(function(ent, entityEvent)	
			print('AutoTeamEntity: Received entity event of type ' .. entityEvent.type .. ' and id: ' .. tostring(entityEvent.eventId) .. " from entity " ..  tostring(ent.data.instanceGuid))
		end)
		s_AutoTeamEntity = s_AutoTeamEntityIterator:Next()
	end
end)

@FlashHit
Copy link

https://github.com/Hattiwatti/BF3MinimapGenerator/blob/master/FB%20SDK/ClientPlayer.h#L77
Or maybe sth is wrong with the (client) player.isAllowedToSpawnOn which isn’t exposed in VU.

@kiwidoggie
Copy link

The class you posted is irrelevant (as server allows the spawn, not client).

This should work instead: https://docs.veniceunleashed.net/vext/ref/server/type/player/#isallowedtospawn

@kiwidoggie
Copy link

Also, cannot repro. Ensure that you didn't have deserting enabled.

I did these repro steps.

Damavand Peak, Rush

Myself dead on defenders in spawn menu,
Spawn Squadmate (Defender) in attacker controlled area,
Attempt to spawn
Server rejects spawn.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants