Author Topic: Rallypack Weapons [WIP]  (Read 65800 times)

When a client joins a server there is a moment when their client loads and their FOV can be accurately determined with the game's built-in FOV commands before it starts returning 90 for some handicapped reason nobody knows. If you try to capture this value too early or too late, FOV cannot be accurately determined. Tendon's FOV script attempts to resolve this issue by setting the client's FOV to 3.14 when they connect, and then running a loop to determine when FOV updates to the accurate value, and trying to capture it then.

On certain occasions I have noticed that:
- The client's default FOV is predicted to be 3.14 (setting FOV to 3.14 too late?)
- The client's default FOV is predicted to be 90 when it shouldn't (loop check not looping fast enough to catch the accurate value?)

Some things that can break your FOV:
- Joining the server while holding the zoom key
- Leaving the server while zoomed in with a weapon/holding the zoom key

The only remaining solution I can think of is to use the /SetDefaultFOV -fov command. This could probably be improved by then saving that value to a file, referenced by BL_ID, somewhere server-side and then accessing it again each time the client joins so they only have to do it once each time they update their FOV.
« Last Edit: April 03, 2020, 09:24:48 PM by Crook »

you shouldnt have ads as a feature since fov control is really unreliable and annoying plus you can zoom using f. its just a poor mechanic in general

It's only a poor mechanic because the interface is garbage and the only person capable of fixing it has refused to out of spite, removing it entirely just isn't a solution I'm going to consider


forget... my dreams are leaking into reality again... forget forget...

https://streamable.com/r554lg
Redid the tactical shield from the ground up using a system of bots instead, results in much more accuracy since I can use the bot hitbox

update sooner or later

damn, thats really neat

- All magazine-fed weapons have been migrated to the magazine system
- Tactical shield redone
- Trying out a new FOV solution, this one is less engineered but seems to produce better/workable results

known issues:
- Tactical shield does not respond to being shot when not in a LAN game, probably minigameCanDamage garbage
- Handgun revolver spawns gore when vehicle gore is enabled (lol)

damn, thats really neat
Thank you sir.
« Last Edit: April 19, 2020, 02:39:07 PM by Crook »

i've been playing around with this for a while with aebaadcode and god DAMN these are awesome

i really hope you can get around to finishing the ammo system soon so i can use the non mag fed weapons with limited ammo

i've noticed a few bugs here and there though;

1. sometimes, riot shields don't despawn properly and just get stuck in the floor after the user dies or despawns;
2. also sometimes the riot shield doesn't seem to block incoming damage (although most of the time it does work properly);
3. with the grenadier rifle, while on your last mag, you can switch to the grenade launcher and reload to create a new mag out of thin air;
4. the riot shield freaks out when reloading/equipping sometimes;
5. every time i respawn, the mod throws the error Unknown command PingRClient (server.cs, line 805) :

6. this one i have absolutely no idea how it happened; i just duplicated a bot holding a riot shield to somewhere else;

after killing the bot, the shield just fell to the ground and stayed there like in pt. 1
7. the anti materiel and blast rifle don't pierce through riot shields;
8. when aiming down sights, the blast rifle throws the errors Unknown command On(Un)Mount (NTW20.cs, lines 246/257);
9. the OPFOR sniper rifle seems to be colorshifted to dark gray when equipped but brown when spawned on a brick;

aaaaand you've made the best weapon pack i've ever used, good job.

Thanks for the testing guys.

I have reproduced and fixed 3, 5, and 8 for the next version. I can't seem to reproduce 1 or 6, but I noticed I forgot to add a contingency for Armor::onRemove which is most likely the cause. 7 is (probably) caused by minigameCanDamage dogstuff, I believe I have successfully bypassed this in the next version. For 9, judging by some of the colors it looks like textures haven't been downloaded re-read what you said, weird

I'm not sure if there's much I can do about 4. It seems to be an issue with how bots are spawned/mounted at the engine level. The bot seems to appear at the location of the mount facing north for a couple frames before actually mounting. Currently the ADS shield is a separate datablock entirely, so it has to be remounted when switching between the up and ADS position, I can probably find a better way to do that so the bot doesn't have to be remounted for switching positions, but the issue will still persist when equipping/dequipping the shield and will be more noticeable on higher latency. Will try to find a visual workaround.

To clarify on how the shield works: it uses a bot's hitbox to block bullets rather than math, a problem with this is that if you look too far up, your shield will clip inside of your player hitbox, meaning your upper body can be shot even if it's bent under the shield as the player hitbox only rotates on a single axis. I might make the shield hitbox wider to compensate for the fact that the default player hitbox is comically wider than it's actual visual model though lol.
« Last Edit: April 09, 2020, 07:14:37 PM by Crook »

oh also, i forgot;
10. while using the stealth rifle's canted sight, it fires a projectile instead of a timed hitscan like the other sniper rifles do