#Team Fortress 2 Megathread - winter is the most chill time of year

1 messages · Page 59 of 1

livid oracle
#

i guess this is what they meant by it being a "consistent cone now"

small sirenBOT
#

*i guess this is what

they meant by it being a

"consistent cone now"*

next nymph
#

its a consistent cone. Just as long as you dont look in any diagonal direction

livid oracle
#

btw does it come from the eyes now instead of the pyro's centre

potent wolf
#

it's using the eyeposition vector, so yeah probably

#

someone should make a debug overlay for this

#

it's the same except for more broken decomp

livid oracle
#

it might be something really stupid

potent wolf
livid oracle
#

hmmm

#

it's different

#

at the end

#

seems to just be a flipped condition though

potent wolf
#

different compiler, different codegen

livid oracle
#

im wondering if it's compiler shit that causes the different behaviour though

#

well that's probably most likely the cause

potent wolf
#

i think it's a bug on the vphysics side

livid oracle
#

were there any physics changes

potent wolf
#

dunno

#

i'm not aware of any intentional changes

#

lol

summer steeple
#

they hated jesus because he spoke the truth

kind falcon
potent wolf
sterile ferry
#

cone strong enough to cause a ping noise

livid oracle
potent wolf
#

no idea

sterile ferry
#

im assuming the last one was directly upward

potent wolf
#

looking straight up and straight down

sterile ferry
#

srraifhr up makes sense but straight down is mystical

potent wolf
#

it seems fine to me, it looks more sane in firstperson

#

again, someone should make a debug overlay for this

sterile ferry
#

ngl i only now realized jumping means you extend the airblast range if aiming downards comtress

limpid panther
#

did you actually suggest a cvar that detects cheaters?

potent wolf
#

politely request that cheaters set cl_is_cheating 1

left sand
#

any in-game solution

#

the only real solutions are steam trust or improved client side vac

#

but client side vac isnt gonna get much better

#

so steam trust is the way

languid haven
#

because if all these bots are using the same hardware with different accounts just prevent joining multiplayer games of tf2 on accounts using the same pc.

grim parcel
#

they should make vac kernel level

#

and remove linux support

#

problem solved

potent wolf
languid haven
grim parcel
next nymph
#

prevent hackers by making tf2 cost $$$ to play

grim parcel
#

kernel level vac would fix this

languid haven
grim parcel
languid haven
#

if they're connecting from the same ip, same mac address and most hardware specs are the same. what if it used those to determine if it's the same pc?

languid haven
#

how can an ip be spoofed?

potent wolf
#

vpn

next nymph
#

because there's no need to, because detection doesn't care about being on the same PC. But if detection did start doing that, there would be a reason to virtualize/spoof/vpn/etc.

languid haven
#

that's not spoofing, that's basically a redirect

potent wolf
languid haven
#

and even then how many vpns do you think 20 different accounts can connect to before their isp thinks they're getting DDosed?

next nymph
#

more than 20 vpns

languid haven
next nymph
#

they dont need to be paid services. You could just ask your buddies to act as proxies for you and that would work in this case

languid haven
next nymph
#

im not following

languid haven
#

and even then how many of them do you think have friends at all?

heavy solarBOT
#

@languid haven has leveled up! (28 ➜ 29)

next nymph
#

if your security only works if people work alone, its not very good security

languid haven
#

so what? you're saying some organized group of people are bot hosting to kill a game that means nothing to them?

next nymph
#

that is essentially the status quo, yeah

languid haven
#

ok, tell me when you find sewer squad

tough locust
#

would it be impossible to bring watchdog over to tf2? it was working pretty fine in CSGO i think they ditched it though

#

and judging by the booming cs2 problem they could really use watchdong rn

#

lol i mean watchdog

#

or was it called overwatch

crisp cedar
#

watchdog?

#

overwatch

summer steeple
#

they called it overwatch and tbh I think they ditched it because it was just getting diluted by people giving bad faith demo reviews

crisp cedar
#

its overwatch

summer steeple
#

for example there was someone near the end of overwatch's life cycle who setup a neural network that just watched overwatch cases... which defeats the point

crisp cedar
#

dota has overwatch trollfig

#

its rather functional

summer steeple
#

not to mention the fact that because the majority of the playerbase didn't use overwatch it probably started to get more bots than real people on it

#

thats my guess tho

slender nexus
#

ogresnotch

crisp cedar
small sirenBOT
#

*its actually

a fantastic system for

a game like dota*

crisp cedar
#

yet again other valve games fail so that dota can thrive

summer steeple
#

valve should launch account trust factor and then base the weight of an overwatch report on that

crisp cedar
#

planned

summer steeple
#

planned for 2095

limpid panther
#

this is common practice by ISPs on many parts of the world

#

even some powerusers find it desirable because when an ISP does that it can plasably deny companies seeking to send end users nasty letters they can point out they don't know which of the users did that because the company wouldn't specific a port number

potent wolf
#

does steam support ipv6?

limpid panther
#

I do wonder if tf2 somehow supprts it

#

I know that Minecraft went a long time without supporting it

next nymph
# limpid panther there are whole neighborhoods using 1 single IPv4

to its credit, I don't think the idea was that IP addresses would be the only thing to identify a specific machine. It'd have to match IP and mac address and hardware and etc.

So the issue is "all of those can be changed or faked fairly easily for a bot network operator, which defeats the entire idea"

potent wolf
#

just solve the problem, it's that easy!

potent wolf
cursive peak
summer steeple
#

wtf they fixed the dxlevel crash

sterile ferry
sterile ferry
jagged pawn
#

serious question, why are bounding boxes so prevalent? seems extremely weird to use a hitbox that changes based on the direction you face for so many things (melee, projectiles, airblast, etc) and I'm sure there's a reason but I can't figure it out

crisp cedar
summer steeple
sterile ferry
jagged pawn
#

ye

sterile ferry
#

but yea its just easier to calculate or smth

summer steeple
#

easier to calculate and to players its more consistent

#

imagine if you missed a rocket because someone's arm was in a different spot

jagged pawn
#

saving on calculation I get but like, can't really understand how it would be considered more consistent. I can see the argument for explosives but definitely not something like the huntsman for example

sterile ferry
#

me when he calls for medic so my flare misses trollfig

jagged pawn
#

putting aside the bugs with how it calculates headshots, I just mean the standard hit detection

sterile ferry
jagged pawn
#

fair enough

#

but yeah like for rockets sure makes sense

sterile ferry
#

hunstman is its own enigma lowkey..

jagged pawn
misty plover
#

I hate the cone I hate the cone I hate the cone I hate the cone I hate the cone I hate the cone I hate the cone I hate the cone I hate the cone

I want my funny box back

jagged pawn
#

cone better

sterile ferry
summer steeple
#

no way did they really forget to put in references to the localization strings for other speaker settings

potent wolf
#

THE CONE IS EVIL

summer steeple
#

the cone of shame

#

like a dog

sterile ferry
#

is there something im missing..

potent wolf
#

i am a certified cone hater™️

jagged pawn
#

actually wait follow up question. if the argument is that it's meant to save resources, doesn't that benefit not apply with airblast? since it's doing two checks now if I understand correctly

sterile ferry
#

is it a gameplay issue or is it a whats going with it issue

potent wolf
jagged pawn
#

oh I see

summer steeple
misty plover
potent wolf
#

It still allows silly airblast, you just need to look up or down

misty plover
#

The way they did the cone check is pretty expensive though iirc

potent wolf
#

The old cone was just a dot product check

sterile ferry
#

also why does every shot with the dragons fury chug my frames for a moment

misty plover
#

Was it?

potent wolf
#

Pretty sure, read the leaked code

sterile ferry
potent wolf
#

unless im missing something

misty plover
#

Spawning dynamic lights in general causes silly in the game

small sirenBOT
#

*Spawning dynamic

lights in general causes

silly in the game*

misty plover
#

At least in 64bit

sterile ferry
#

nah it was always likej that

summer steeple
#

nod3d9ex added to linux?

#

-default removed???

sterile ferry
#

dx8 and everything df always causes frame drop

sterile ferry
summer steeple
#

i'm so lost

#

I have to be misunderstanding

misty plover
#

I get a stutter when I use funny flashlight command on servers that enable it

sterile ferry
#

they should bring back the coneless airblast so i can pop people into the air with less thinking 🛐

summer steeple
#

no way did they actually add dxlevel to linux

jagged pawn
#

vanilla spawns 50 billion lights in front of you when you fire

#

it's stupid

summer steeple
#

fuck off github

jagged pawn
left sand
#

microsoft penny pinching

summer steeple
#

can someone on linux test dxlevel

median pier
#

i can real quick, what should i do and what should i look for

summer steeple
#

I refuse to believe this isn't just like removing things from OS specific compiler flags and making them generic

summer steeple
#

does mat_dxlevel report dx8

#

etc.

median pier
#

don't remember what dxlevels look like which, never tweaked them

summer steeple
#

it'll look bad thats how you'll know

sterile ferry
#

build a teleporter and screenshot it or smth

summer steeple
#

the casual medal will be broken looking

paper sluice
#

The medigun beam will be really bright

#

That too

orchid sorrel
median pier
#

mat_dxlevel is 92

potent wolf
#

as expected

median pier
#

no flags for dxlevel set

#

default

potent wolf
#

it does nothing

summer steeple
#

@balmy root i'd post your message here so more people see it

#

ah whatever i'll screenshot it from that help thread

#

intersting change

#

I wonder what effects it has

balmy root
#

well, default is still 92

#

probably nothing so far

summer steeple
#

even tho it says "def. 100"?

balmy root
#

yes, it gets reset to 92 it seems

summer steeple
#

huh

balmy root
#

it's because before this update the cvar had a min. value of 90 and max. value of 92

summer steeple
#

maybe I was right when I thought it was a weird half-baked thing to remove OS specific behavior

balmy root
#

I talked to a person on that thread and it's probably related to dead code from ToGL, which forced dxlevel 92

#

I think it's something related to compatibility with OpenGL

potent wolf
#

death to dxvk, togl is the best 🫡

summer willow
#

we're gonna start seeing fixes for bugs decade olds in tf2 (because maybe now is already a part of tf2) or is just gonna be like fixing regressions problems with porting to 64bit?

sterile ferry
#

unless it really is just negative and unintentional

potent wolf
#

cs2 native vulkan trollfig

balmy root
#

valve stonks

balmy root
#

but performance on Linux compared to Windows is bad

#

and I mean it

potent wolf
#

that was the joke

balmy root
#

😭

#

OpenGL my beloved

balmy root
#

now it reports m_nDXSupportLevel: 100 from mat_info

#

before it only reported 92 on Linux

#

it is a step forward for my issue which requests 95 to be the default

summer steeple
#

as long as it doesn't support dx8 i'm happy

#

i'd be mad if we regressed

grim parcel
#

dx7

balmy root
#

yes dx8 should be dead by now

potent wolf
#

d8vk in tf2 when

balmy root
# grim parcel dx7

IIRC I saw a youtube video many years ago about a person forcing dx7 on tf2

#

it was horrendous

#

lemme see if I can find it

grim parcel
summer steeple
#

ok so

#

i decided to look at the code for mat_dxlevel

balmy root
summer steeple
#

they probably just removed this ifdef

summer steeple
#

and set max to 100

grim parcel
sterile ferry
summer steeple
#

wait this update means no more directX 69 in the settings :(

sterile ferry
#

need that rn

balmy root
#

which makes me think it's DX7 or lower

balmy root
#

even after removing the code

summer steeple
#

I mean we don't know exactly what they did

summer steeple
#

it probably is that the ifdef was removed and replaced with a general check

balmy root
#

hmm

#

what I noticed

#

is that mat_dxlevel previously on my machine was like "92.0000000"

summer steeple
#

so the cvar is the same defintion on both OSes (note the fact that it now has its description from windows)

balmy root
#

after this update it is only "92", and also the description was updated to mention competitive

#

before the update, it only was "Current DirectX level"

#

now, it is the same desc. from Windows

languid haven
#

I heard there was a way to use DX10 but on the steam website it said that was for xbox or something.

summer steeple
#

dxlevel 100 is unfinished dx10 support

#

there's no actual dx10 backend

languid haven
#

Ah

balmy root
#

on TF2 XBOX afaik the DX level used is 98

summer steeple
#

ye

rare creek
balmy root
#

dxlevel 100 seems to be a workaround for removing device limits

summer steeple
#

ok so

#

looking at the dxlevel code

#

essentially the various dxlevel values set specific variables, usually disabling things

#

except 100

#

100 just ends without setting anything

languid haven
#

That is....kinda funny. So wouldn't that cause a crash or would it default to something else?

#

Or does it just use whatever was previously set?

summer steeple
#

so, they call the variables "caps", so I assume that it is essentially just lowering maximums and disabling things, and the default is "always on", or the highest possible value

balmy root
#

judging from dxsupport.cfg it's theoretically possible to use dxlevel 50 on tf2, but that would require various hacks I assume

summer steeple
#

for example, all of the dxlevel code (except 100) tells the game that the GPU does not support DX10

summer steeple
rare creek
#

i thjnj the game would crash due to all of the shaders not being possible on directx 5

languid haven
#

I heard dx9 and dx10 were similar but i'm not so sure.

summer steeple
#

also a possibility

median pier
#

are there any visual differences specifically on dxlevel 100

languid haven
#

Or performance differences? Or any at all?

sterile ferry
tough locust
languid haven
summer steeple
#

supposedly dxlevel 100 uses "dx10 blending", idk what exactly that is but I assume its just a faster version of dx9 code idk

balmy root
#

it seems many games jumped from DX9 to 11

#

10 is quite "unpopular"

languid haven
#

11 is much more laggier though

summer steeple
#

it appears to do something regarding converting to SRGB color space?

languid haven
#

And 12 ain't much bettee

summer steeple
#

maybe on dx10 supported cards its not necessary so its faster

balmy root
summer steeple
#

iirc 12 is better but harder to setup well due to being more low-level

#

its basically a completely different beast

balmy root
#

ye

#

from Wikipedia:

Lead developer Max McMullen stated that the main goal of Direct3D 12 is to achieve "console-level efficiency on phone, tablet and PC".

languid haven
summer steeple
#

do you have an intel gpu?

balmy root
summer steeple
#

or did at the time?

languid haven
grim parcel
summer steeple
#

because it seems like on intel cards they force disable it, but it probably doesn't take into account newer intel GPUs

unborn pecan
#

intel fards

languid haven
sterile ferry
#

Bro

summer steeple
#

64bit just built different

#

quite literally

grim parcel
jagged pawn
#

tf2 dx12 update tomorrow

grim parcel
#

real

#

with ray tracing

sterile ferry
#

i was sitting in spawn firing that thing and still digging trenches in my frames

#

unless that was thursday

balmy root
balmy root
#

microsoft restricts the devs choices to what they want to do, whereas in vulkan you can do anything

languid haven
#

Tf2 now

grim parcel
balmy root
#

no they aren't

jagged pawn
#

is the df pause your game by left clicking thing within the scope of what joshie would fix or nah

balmy root
#

vulkan programming is quite different from dx

timid plaza
balmy root
#

and it's just simpler to program in dx and then slap dxvk on top of it

summer steeple
#

(which is partially why valve is using dxvk instead of native)

orchid sorrel
#

finally

potent wolf
#

comparing old versions of dx with vulkan is kinda silly

orchid sorrel
#

we can be gordon froman in fort team double

balmy root
tough locust
balmy root
#

imagine they wanting to create a native vulkan render for a Source 1 game

#

not happening

#

:(

summer steeple
timid plaza
tough locust
languid haven
potent wolf
#

what

jagged pawn
#

Arch has less bloat. What causes most lag is post processing and not understanding what's causing lag.

languid haven
#

It's why opengl es has better performance then opengl on Similar versions. It's not better and supports less features but it makes it faster.

next nymph
potent wolf
#

how does opengl have less bloat

jagged pawn
#

it's open

languid haven
#

Compared to DX12?

jagged pawn
#

so all the bloat walks out

languid haven
#

its not opensource

jagged pawn
#

LOL

summer steeple
#

windows 98 has less bloat than windows 10 because its older and doesn't support modern hardware

small sirenBOT
#

*windows 98

has less bloat than windows 10

because its older*

potent wolf
#

that has nothing to do with "bloat"

jagged pawn
#

actually called it

languid haven
#

Actually idfk why they call it openGL.

potent wolf
#

Open Graphics Library

tough locust
#

opengl probably bloated with that ancient 90s codebase

languid haven
#

But it ain't open, maybe it is compared to direct3D

summer steeple
#

tf2 is bloated because it has code from quake

next nymph
#

voodoo 2 graphics cards from 1998 have less bloat than ti1080s

orchid sorrel
#

tf2 is bloated and need some tums

jagged pawn
potent wolf
#

how is opengl not open?

grim parcel
#

closedgl

jagged pawn
#

closedgl

orchid sorrel
#

invitegl

jagged pawn
#

FUCK

grim parcel
#

HAHAHHAHA

languid haven
#

How is it open?

jagged pawn
#

gdi

potent wolf
#

It's an open specification

#

that anyone can implement

languid haven
languid haven
potent wolf
#

LMAO

#

yeah basically

#

but please please please do some basic research

languid haven
#

Didn't the company that made opengl make vulkan?

summer steeple
#

yeah

#

khronos group

languid haven
#

I heard 4.6 GL is the only one that supports mesh shaders

#

Or something like that

grim parcel
#

it’s immediately better

next nymph
#

i still gotta try out mesh shaders at some point, hardly even touched compute shaders. Basically only worked in vertex and fragment shaders

jagged pawn
#

this is why I uninstalled google maps and use osmand now

grim parcel
#

osm stans are next level

#

i like foss but god damn i want to get to work at a reasonable time

#

or be able to find places

eternal haven
#

On windows, at least on nvidia, alt tab should be just about instant in every configuration

#

If it's not instant, you're doing something wrong

#

like leaving dxlevel in launch options or something weird like that

summer steeple
#

i think joshie actually blamed nvidia drivers not supporting something for slower alt-tabs on vulkan

potent wolf
#

i think it's a vulkan-specific issue

#

yeah that

eternal haven
#

Idk it's instant for me

#

With dxvk

#

Nvidia

grim parcel
summer steeple
#

mine flickers black for a split second before tabbing in/out

grim parcel
#

what gpu?

summer steeple
#

GTX 1070

eternal haven
#

Yeah I have the black flicker too using dxvk

#

I still considered that instant, it's fast enough

summer steeple
#

alt-tabs aren't slow but it isn't instant

#

like a half second

eternal haven
#

But no black flicker without dxvk

#

For me it flicks black for maybe 0.1 seconds using dxvk

summer steeple
craggy ridge
#

1st patch without reverting the cone

#

holy shit we are so back

summer steeple
#

to be completely honest I do kinda disagree with joshie here because i haven't had this issue in any other vulkan game so it kinda... shouldn't be up to GPU drivers idk

#

like yes the driver should support this but also you could fix this i think

eternal haven
#

FWIW toggling the nvidia setting for vulkan present method between "prefer native" and "prefer layered on DXGI swapchain" doens't have any effect on alt tabs for me

#

Both are very quick but both have a short black flicker

summer steeple
#

yeah I was just about to check that since I googled it

summer steeple
#

maybe we wait and hope that they add some specific driver settings to the new tf2 exes

green tulip
#

I just used a profile inspector and added the new EXE names to the "Team Fortress 2" profile

unborn pecan
#

what driver are we talking about?

summer steeple
#

nvidia windows drivers

eternal haven
#

What would they add?

#

I don't think any issue is nvidia's fault here

summer steeple
#

idk they have all sorts of wacky behind the scenes settings

eternal haven
#

Well I mean everything seems to already work fine

#

At least on Ampere

summer steeple
#

source has its own antialiasing compatability setting!

summer steeple
#

lmao maybe

grim parcel
#

this regularly happens there

eternal haven
#

Yeah it's kind of crazy how much application specific shit there is in the windows gpu drivers

#

No wonder they're like 1gb lol

green tulip
#

I think it's funny how the "Antialiasing Fix" in Nvidia's drivers is ONLY used on TF2 and all it does is make some AA color sampling less aggressive on certain generations of cards and nothing else

green tulip
#

guess TF2's art style was too vibrant or something

grim parcel
#

linux drivers also arent much smaller. nvidia’s for example is pretty comparable to nvcleaninstall

#

and mesa is in the kernel anyways

eternal haven
#

I wouldn't know

#

pretty much just a windows user

summer steeple
#

well interestingly, Pc gaming wiki actually has a tutorial for setting up this specific thing, but it doesn't work

#

so i'm gonna go out on a limb and say that its not necessarily nvidia's fault

#

especially considering it says this

eternal haven
#

I mean the alt tabbing is fast for me

#

I wonder why it would be slow for some people

#

Maybe differences in nvidia generation but I kinda doubt it's that

languid haven
#

alt tab is a little slow for me but before during 64bit beta it caused my pc to lag, stutter and freeze. way better now.

eternal haven
#

It was instant before and instant now

#

Did you have -dxlevel in launch options or anything else like that

#

or change antialiasing mid-game

#

or anything causing a materialsystem reload

languid haven
#

now it just takes 3-6 seconds to switch onto and off of the fullscreen tf.

eternal haven
#

It's so weird

#

I've always had alt tabs under 0.1 seconds

#

Any dxlevel

eternal haven
#

What could the difference be?

grim parcel
#

native ogl would fix this

languid haven
#

nah

green tulip
#

have y'all confirmed whether or not Windows is applying it's "Fullscreen Optimizations"

#

?

potent wolf
#

native glide support would fix this

languid haven
#

it's more of a non-issue right now for alt tabbing. there's bigger problems really.

eternal haven
#

so normal exclusive fullscreen

#

but when I use the fullscreen optimizations, still instant alt tabs

small sirenBOT
#

*but when I use the

fullscreen optimizations,

still instant alt tabs*

languid haven
#

oh also comfig is not using the precomfig so i'm stuck having to use autoexec on linux instead because tf2 doesn't even detect precomfig either.

grim parcel
#

what

green tulip
#

if your keyboard has volume controls it's easy to test by seeing if the Windows volume overlay shows up or not since sometimes fullscreen optimizations don't get turned off even if you tell it to be off

grim parcel
#

you mean pre_comfig.cfg?

languid haven
#

i did not name it

grim parcel
#

i think your problem is that precomfig is the wrong name

languid haven
#

dafuq

eternal haven
#

pre_comfig

#

need the underscore

grim parcel
languid haven
#

thanks

eternal haven
#

Black flicker is a bit longer on "prefer native"

#

it's barely noticeable but definitely just a bit longer

drowsy marlin
#

incredible

languid haven
# drowsy marlin

sounds like a shit post like when sniper eating his rifle caused a crash

small sirenBOT
#

*sounds like a shit post

like when sniper eating his

rifle caused a crash*

eternal haven
#

I mean it makes sense

#

the tf2 hud uses some of the hl2 hud as a base

#

and I think some of the tf2 player code uses hl2 player code as a base

potent wolf
broken haven
#

chud autoaim

#

controlla playa

mystic turtle
#

what the heck does the autoaim hud even do?

#

I barely played HL2, and I only recall autoaim being present only on easy difficulty and on the game's console ports?

mystic turtle
#

uh...

#

oh well, controllers!

languid haven
#

sentries and wrangler doesn't count

summer steeple
#

it doesn't

potent wolf
#

i don't think the autoaim hud actually worked

languid haven
#

so why fix it?

potent wolf
#

did you read the patch note?

next nymph
#

if you want to get rid of hud things that never worked and do literally nothing, you'll have to pry them from my cold dead hands

languid haven
#

i'd prefer if fov setting worked. it's forced on 90

potent wolf
#

it works fine for me

languid haven
#

it just changes model fov now for me

paper sluice
#

Normally I just have to restart the game when that happens

potent wolf
#

fov_desired

languid haven
#

or at least they are now

#

hey are wait events still causing issues in 64bit?

kind falcon
slender nexus
#

Damn this new update is cool

#

I'm cranking up more settings on my steam deck config and I'm still consistently reaching 60fps now

#

remember that I would usually only hope to reach a peak of around 40~ fps before this update

languid haven
#

maybe don't use max settings?

hoary geyser
#

in tf2?

slender nexus
hoary geyser
#

how are you getting that low of fps in tf2 on a steam deck

slender nexus
#

idk that's just what I've known since getting my steam deck in 2022

#

My steam deck config before this was mainly centered around the comfig low preset with every graphics setting that mainly taxes the GPU set to max

#

Because the only issue with the steam deck is its relatively weak single core performance

livid oracle
#

@misty plover btw how did you do your visualisation

#

with vscript right?

misty plover
#

Yeah

#

Just vscript and trash math

potent wolf
#

what have i done

misty plover
#

Exist

#

Anyways, is position and rotation still slightly truncated in s2c packets?

livid oracle
#

your answer decides if i will work on it or not

misty plover
livid oracle
#

oh i mean vscript in a listen server

misty plover
#

Rn you just execute the script then call SetupWeapon()

livid oracle
#

when i did the airblast thing years ago source didnt have a way to show cones i had to do a bunch of math it was annoying

summer steeple
#

vscript is arguably easiest in a listen server because you can just call script_execute scriptfilename from the console

#

or do oneliners with just script

misty plover
#

I'm getting food rn but it takes in a cone angle and max distance and color iirc it's been a minute since I wrote it

misty plover
small sirenBOT
#

*Doesn't work if you

want spaces cause source command

parsing says fuck you*

summer steeple
#

ohhhh right

#

well i think you can use quotes tho

#

script "foo bar"

#

i forget

livid oracle
#

seemed like the simplest way to show a cone in debugoverlay

summer steeple
#

i don't tend to do oneliners cause what I do is more complicated than is possible with that

#

you can't do triangles i don't think

#

you'd have to fake it

livid oracle
#

wait wdym you cant do triangles

potent wolf
#

vscript says no triangles for you

livid oracle
#

???

summer steeple
#

you get box, circles, and lines

#

fuck you

livid oracle
#

that's cringe

misty plover
#

My box is done with lines instead of box because I am a rebel

summer steeple
#

so you'd have to jerryrig it with math

small sirenBOT
#

*My box is done with

lines instead of box because

I am a rebel*

livid oracle
#

oh wait i didnt even do the lines https://m.youtube.com/watch?v=sZ0axNXvNik

Airblast detection uses a 256x256x256 cube, not a cone

Projectiles and players touching the cube will be airblasted. The cube does not rotate with the pyro, so projectiles and players can be reflected from behind at certain angles.

Before Jungle Inferno, a 256x256x128 box was used, which is half as tall. In addition, players had to be within a...

▶ Play video
#

it's just triangles here

#

i guess the transparent part isnt really necessary

misty plover
summer steeple
#

yeah lol so much stuff you gotta do yourself

livid oracle
#

can you put a tranparent colour through the box

potent wolf
#

yeah

livid oracle
#

and it'll do something like in the thumbnail here?

summer steeple
#

idk why for only lines they have a function with a color input as vector and one for separate RGB

misty plover
#

I wish there was a draw tri

livid oracle
#

actually no triangles

#

so lame

misty plover
#

Time to make gothub issues ig

potent wolf
#

that would be a bit too convenient

summer steeple
#

hmmm

#

you could always make an entity thats a plane and assign a texture to it thats a triangle trollfig

summer steeple
#

i hate this steamhapp so much

misty plover
summer steeple
#

i'm going to inject a check into my discord that looks for the hash of this steamhapp and removes it

#

and then i will add support for an AI to check for similar images

#

and it will brick my discord

misty plover
potent wolf
#

UB what angle did you use in your script?

misty plover
#

Forgor

#

Almost home hold on

next nymph
#

but no reason you cant have both

formal dew
#

🤔

misty plover
#

Also nvm draw cone wasn't customizable

#

I had the numbers hardcoded lol

livid oracle
#

on a 45 degree ramp your crosshair is off

#

idk if this is related to your crosshair being off on moving platforms

misty plover
#

But yeah that's what I used

#

I also have 0 clue where it comes out of the body lol

potent wolf
#

it should be 35 degrees, coming from the eyes

#

#1072696252162117752 message

misty plover
#

Gotcha

#

I assumed it was either weapon or eyes lol

#

Yeah that's perfect thanks

potent wolf
#

@livid oracle

livid oracle
misty plover
livid oracle
potent wolf
livid oracle
#

huh so it was decreased by a tiny little bit?

#

i assume because it will feel a lot bigger anyway

misty plover
#

I guess they silently tightened it in JI and never documented it because it didn't actually properly math the check before?

#

Maybe the vphysics function they use after JI always returned true till 64bit?

potent wolf
potent wolf
livid oracle
#

according to replay at least trollfig

#

idk if it's used anywhere else, doesnt seem like it would be

small sirenBOT
#

*idk if it's

used anywhere else, doesnt

seem like it would be*

misty plover
#

Guess I'll report to github issue

livid oracle
#

yeah but afaik joshie claims they never touched it

misty plover
#

Joshie never touched the flamethrower code, might have been used in another spot?

kind falcon
misty plover
#

Or some overflow fuckery caused it (super super super unlikely)

livid oracle
kind falcon
livid oracle
#

at this point im convinced it's just compiler bullshit

kind falcon
#

compiler optiyon

kind falcon
potent wolf
#

it would return 0x41 iirc

livid oracle
#

i dont think it's 7

slender nexus
#

gothhub

potent wolf
#

lemme see if i can get the script working again

misty plover
potent wolf
#

especially for a bool

misty plover
#

Mmmhm

livid oracle
#

let's just check the source code of BoxIntersectsCone trollfig

misty plover
#

Throwing exception and getting interpreted wrong? Potentailly?

#

(Literally pulling any answer out of my ass)

eternal haven
kind falcon
#

env var DXVK_HUD

misty plover
#

Can't integrate with Jolt yet

livid oracle
#

so you can't airblast when the server is using jolt?

#

wtf

misty plover
#

I hope that's not the case

#

But maybe

potent wolf
#

probably

livid oracle
potent wolf
#

yeah?

misty plover
livid oracle
potent wolf
#

yeah older version

misty plover
#

Dumb joke

potent wolf
#

oh lol

#

@ Mambo

livid oracle
#

reminder that @teal sand is transphobic (hates transmission)

misty plover
#

Oh yeah, I thought about trying to implement something like Minecraft's brigadier as a chat command parser in vscript

#

Its probably trivial but at the same time it seems cursed to do idk

misty plover
#

Huh, dying changes your bbox position? I didn't know that

#

I forgot to turn on my silly name, there we go

livid oracle
#

it follows you in free roam

misty plover
#

Damn

eternal haven
#

Is it fine to attach a debugger to tf2 as long as you use -insecure?

#

No VAC

potent wolf
#

yes

livid oracle
#

should be fine to do anything with it as long as you run it with -insecure

misty plover
#

Oh that sc didn't capture what I saw lol

#

Its bugging out my monitor for some reason

#

The lines sometimes render over my viewmodel

potent wolf
#

wtf

livid oracle
#

your gpu will burst into flames in 10 seconds

misty plover
#

Nesting haters rise up (nasty code* still though)

  • More than two levels of nesting (war crime)
livid oracle
#

btw it's 35 degrees for sure right? i assume that's the degrees you used

misty plover
#

Ignore the weapon.GetCenter() I forgot to remove that ujel

livid oracle
#

so i guess here's the JI cone changes we know of so far:

  • cone degrees decreased from 37.5 to 35
  • checks intersection with the player's entire bbox instead of just their centre point
  • comes out of the eyes now instead of the pyro's centre point
misty plover
#

Yep

livid oracle
#

can you check if like

misty plover
livid oracle
#

if this would count

misty plover
#

Let me enable box draw

livid oracle
#

basically checking if the new cone has infinite range

#

or at least just enough range to reach the box's corner

#

btw imo it's easier to test this with a pyro bot instead being the pyro for this

potent wolf
#

cone length is logged in the video

misty plover
#

Kinda?

livid oracle
#

wait wdym kinda

livid oracle
potent wolf
livid oracle
#

the box's diagonal length would be ~362

#

however the cone does start inside it

#

i forgot what the box's offset is from the pyro

#

i do know it's offset from the eyes, not the pyro's centre

misty plover
#

Does the box move up/down with view angle I forget

livid oracle
#

it does

#

nvm he doesnt mention the offset

#

@misty plover oh it's literally just 128 units

misty plover
#

Mmm then no the cone isn't infinite length

#

Oh interesting vscript draws stay in your demos?

#

Anyways I'm gonna nap

#

I'm still running a fever and all that

livid oracle
#

this is a 256-length cone

kind falcon
potent wolf
kind falcon
livid oracle
potent wolf
livid oracle
#

these players would be ~240 units apart

#

in both x and y

livid oracle
#

cringe!

#

guess im opening tf2

kind falcon
livid oracle
misty plover
#

I thought at first you needed to be intersecting with the airblast box over a certain amount but you don't

livid oracle
#

ok so the cone is not long enough to reach the corner of the box

#

yeah you just need to touch it

misty plover
#

Its hard to visualize the cone properly cause I'm not able to freecam lol

kind falcon
#

like bros name is literally ub. wait. like bros name is literally wget

#

you two probably stink

misty plover
#

"robert"

livid oracle
#

this means this is the actual player airblast shape at 45 degrees

#

@next nymph how does this make you feel

misty plover
misty plover
kind falcon
#

diamond

misty plover
#

Cone that morphs into a cut diamond when rotated 👍

formal dew
#

jungle inferno is real

#

we needed to trust the plan

misty plover
#

Wait hold on another thing I want to test is projectiles let me boot up walkway

summer steeple
#

I mean if you think about it I think this kinda works out because of player bboxes not rotating

#

so you have the pointy end into the diamond

#

and the flat end into the flat end

kind falcon
#

now make an over complicated visual representation of it

potent wolf
# livid oracle 256?

or at least thats what get passed to isconeintersectingbox, check how that value gets used (h in truncatedcone_t)

kind falcon
#

cryptic messages

misty plover
livid oracle
#

yeah it should be unaffected

misty plover
#

Yeah but i wanted to sanity check just incase they meant to change that in JI and never did too lol

#

Wait how old is this bug then, five years it went like this? And we assumed it was intentional? Wack

livid oracle
#

yeah lmao

misty plover
#

Oh I think I found why it always returned true

#

Maybe

#

Relies on some assumptions I can't prove rn

livid oracle
#

what's your guess anyway

misty plover
#

tr.startsolid; is what IsBoxIntersectingCone returns. Looking at the call path it uses DoSweep which calls SweepSingleConvex.
This goes down a way untill

// contains the origin
if ( simplex.SolveGJKSet( vert, &m_pointClosestToIntersection ) )
{
   // Removed for brevity
}

Which if passes it then solves along the sweep, and checks the ray's length.

if the ray length is set to zero the check fails, startsolid and allsolid is set to true.

if ( m_ray->m_length != 0 )
{
    // Removed for brevity
}
else
{
    m_trace.startsolid = true;
    m_trace.allsolid = true;
    m_traceLength = 0;
}

IsBoxIntersectingCone(Bool) returns tr.startsolid and coincidentally the ray it feeds into the trace has a length of 0

// offset the space of this sweep so that the surface is at the origin of the solution space
CTraceRay ray( vec3_origin, vec3_origin );
livid oracle
#

what makes the behaviour different between 32 and 64 bit

misty plover
#

Gonna guess behavior was changed somewhere in this (since the comment seems to imply its not supposed to have a length of zero?)

#

Would need Replay to decomp it

#
bool CPhysicsTrace::IsBoxIntersectingCone( const Vector &boxAbsMins, const Vector &boxAbsMaxs, const truncatedcone_t &cone )
{
    trace_t tr;
    CM_ClearTrace( &tr );
    bool bPoint = (boxAbsMins == boxAbsMaxs) ? true : false;
    CTraceAABB box( boxAbsMins - cone.origin, boxAbsMaxs - cone.origin, bPoint );
    CTraceCone traceCone( cone, -cone.origin );

    // offset the space of this sweep so that the surface is at the origin of the solution space
    CTraceRay ray( vec3_origin, vec3_origin );

    CTraceSolver solver( &tr, &box, &ray, &traceCone, boxAbsMaxs );
    solver.DoSweep();

    return tr.startsolid;
}

But yeah, I think the ray they pass in has a length of zero pre-ji

#

And coincidentally ntohing uses IsBoxIntersectingCone in the pre-ji codebase (as far as I can tell)

livid oracle
#

i assume nothing other than the airblast uses it even in post-JI

misty plover
#

Most likely

#

So why it got fixed would be even more confusing

#

And it also once again relies on simplex.SolveGJKSet returning true which it shouldn't in this case

#

The only other answer is its reading uninitialized memory

misty plover
#

But why would it be consistently always be passing back then? There should be a nonzero chance of it failing and rejecting no?

#

Head hurt

#

Those are the two answers I can find looking at the code, it seems more than possible that the trace isn't initialized properly though so tr.startsolid is junk

#

No, CM_ClearTrace memsets it to zero

misty plover
fathom eagle
#

Where is spycrab? Is he alright?

heavy solarBOT
#

@fathom eagle has leveled up! (3 ➜ 4)

misty plover
kind falcon
livid oracle
#

it only reaches when you touch the cone, length of 256

left sand
#

is the edge of the cone curved

livid oracle
#

@misty plover can you send your visualisation script trollfig

livid oracle
#

quite funny

misty plover
#

This function does not exist

#

I would never write this

#

I would have used the actual draw box 🙏 surely 🙏 I totally didn't forget about it 🙏

unborn pecan
#

Very soon into 2024, I was playing TF2 as normal and then I was suddenly thrust into the middle of a trial where both sides would have to argue and figure out whether the creamy penguin was cheating or not. After my very first kill of the match, the trial immediately began. Will the truth be revealed, and will I be Innocent or guilty in the eyes...

▶ Play video
languid haven
#

Why link his video?

misty plover
#

What if I did something absolutely awful and made it so it draws the cones with circles instead ujel

unborn pecan
languid haven
#

And would look something out of roblox.

misty plover
#

I'd have it draw in a fixed amount of circles like I do already for the line config

livid oracle
misty plover
#

Epico

livid oracle
#

apparently this is what a truncated cone is, it's definitely not this though

#

it's only 4 values

misty plover
#

Nvm deleting those those posts I was wrong

livid oracle
#

1984

high current
high current
#

Yeh but what’s it look like?

kind falcon
#

it does nothing

high current
#

Then why’d Joshie tweet about it?

livid oracle
#

chud auto aim

limpid panther
high current
#

I’m surprised I didn’t see anything about it. Though it makes sense people trying to use that wouldn’t be the ones in the huds.tf discord.

misty plover
livid oracle
#

chud auto aim

misty plover
#

Chud auto aim

livid oracle
#

@potent wolf another favour trollfig: can you check if CTFWeaponBase::DeflectProjectiles (or maybe CTFFlameThrower::DeflectProjectiles?) uses UTIL_EntitiesInBox or UTIL_EntitiesInSphere

#

also where'd you get "deflection_radius" from?

livid oracle
#

i want Confirmation if the airblast is also supposed to be using a sphere instead of a cube

livid oracle
next nymph
misty plover
#

You're in too deep it's for your own good

unborn pecan
#

the chemicals in question:

sterile ferry
#

looks deadly

misty plover
#

That joke sucked

sterile ferry
#

anyone know why reflect jumping with cow mangler sends you notably further than regular rockets (even if its not a charged shot)

livid oracle
#

like sentry rockets (deals up to 170 self-dmg)

sterile ferry
#

yes

livid oracle
#

well then that's it

sterile ferry
#

but why it do that

livid oracle
#

i didnt even realise it would affect cow mangler rockets too

small sirenBOT
#

*i didnt even

realise it would affect cow

mangler rockets too*

sterile ferry
#

wht would affect

livid oracle
#

read desc

#

guess i'm adding cow mangler rockets to this trollfig

sterile ferry
misty plover
#

There's no way I never noticed this

#

Has to be misinformation

sterile ferry
#

i dont have like

#

scientific proof of this

#

but if you were to jump off a cow mangler and a regular rocket

#

youd notice the difference

sterile ferry
summer willow
#

wake up baby, bots are back

misty plover
#

They've been back for a bit

grim parcel
#

nu uh reddit said otherwise

misty plover
livid oracle
#

seems fake

grizzled chasm
#

Can every pyro vs demo/soldier interaction just be decided with a game of four squares so we don’t have to think about this cone business anymore trollfig

limpid panther
#

okay, I had some scheduling problems, but I'm fairly certain Im gonna start testing when I get home

#

so it's gonna be:
test one:

  • TF2 highest through UI
  • TF2 lowest through UI
  • mastercomfig low
  • mastercomfig low + hud playermodel

hud test:

  • lighthud
  • middlemann
  • most of the others I tested before

hud test 2:

  • same but no match hud
#

any other suggestions?

livid oracle
#

whats middlemann for

limpid panther
#

the one with Hale doing the Anaconda pose

#

it seems to be a popular hud. But I'm not into huds so I don't know

livid oracle
#

i mean like does it usually have better or worse fps than the default hud

limpid panther
livid oracle
#

that is true

high current
#

I feel like there are more complex huds like zees or weirdcore from the looks of it. They’re just complicated in the sense that they use lots of custom materials, which shouldn’t be absurdly laggy either way.

high current
# livid oracle whats middlemann for

Could be interesting to test with/without friendslist enable if you do your testing online. Supposedly a lot of people used to get stutters that were fixed by disabling that element.

#

My bad meant to make that as a reply to @limpid panther

livid oracle
#

were going to kill and eat you

high current
#

Don’t threaten me with a good time

potent wolf
potent wolf
#

which leads to the box test

#

same as the leaked code

summer steeple
#

ficool weighed in on the airblast change

#

specifically this is in response to jane’s github post

potent wolf
#

yeah that makes sense

#

the question is where the issue is

#

i think i might have spotted an issue, but i need to confirm it

small sirenBOT
#

*i think i might have

spotted an issue, but i

need to confirm it*

languid haven
#

oh btw i found a consistent issue but i need to find the map

#

it was the oot map

#

in the hole before the flag pole when climbing down death mountain the brush's geometry is so beyond fucked that it's not even visibly a room. looks like i played a n64 game with a bad emulator but it's in tf2

grim parcel
potent wolf
#

C++ is so good

#

no problems here

summer steeple
#

"no way to fix this, says users of only language where this regularly happens"

languid haven
potent wolf
#

this is an incredibly severe problem

summer steeple
#

this broken airblast installed malware onto my computer and used that to fuck my wife

languid haven
#

ok how many iterations of the same code do you think it's possible to write before the compiler doesn't make a mistake in it? think of it like a translator.

potent wolf
#

what are you talking about?

#

UB doesn't mean the the compiler is making a mistake

#

it's a language ""feature""

languid haven
#

you guys have been using the steam forums too much.

potent wolf
#

explain

potent wolf
#

i did not get an explanation :(

#

guess i'll just never understand

languid haven
#

ok if it fucked up converting c++ to machine code because of some optimization or misread of data. it's like a translator that mistakes the spanish word for black as a english nword. that's as good as my bad explanation can go XD

potent wolf
#

No, optimizations like that aren't incorrect, they're just absolutely insane. The C++ specification explicitly allows them to do that.

unborn pecan
languid haven
potent wolf
#

for some of them you can, but the problem is that C++ makes it incredibly easy to shoot yourself in the foot by default

languid haven
potent wolf
#

safe rust code just doesn't let you do stupid things that cause UB

languid haven
#

have you made a game in rust?

potent wolf
#

no

limpid panther
languid haven
#

good cause i don't know anyone else whom has either

potent wolf
#

ok? what's your point

jagged pawn
#

is it because the cone used to not be truncated? or something else

languid haven
jagged pawn
#

ok now look at the image jim

potent wolf
jagged pawn
#

I'm not getting why that one wouldn't count pre-JI basically

potent wolf
#

pre-JI, the center of the bbox has to intersect the cone

jagged pawn
#

ok that's what I thought but then why does top right work

#

was cone bigger then?

potent wolf
#

because the cone was infinitely long pre-JI

jagged pawn
#

ah yeah that'll do it lol ty

languid haven
potent wolf
#

no

#

the cone check is only run if the box check passes

languid haven
#

ah

high current
unborn pecan
#

@grim parcel

#

@grim parcel

#

@grim parcel

#

getchoo

#

is there somebody named KRUM in ur server

#

Krum

broken haven
#

krum

grim parcel
unborn pecan
#

I just joined

#

😭

#

why u leave

grim parcel
#

i was going to play overwatch

grim parcel
unborn pecan
jagged pawn
jagged pawn
languid haven
#

shit i wasn't meant to reply to that

cursive peak
#

Saw them the most back around when they came out.

jagged pawn
#

there are probably thousands of cosmetics that you've never seen before

#

that's not exactly shocking

languid haven
#

no what's shocking is no one can really use them because they don't drop.

jagged pawn
#

people wear them when they drop and then most of them fizzle out from there, it's exceedingly rare for a cosmetic to stick around in popularity for a long time

small sirenBOT
#

*no what's shocking is

no one can really use them

because they don't drop.*

jagged pawn
languid haven
#

also voicelines shouldn't need a set. say if your equiped 2 or 1 of a set it'd count would be better

jagged pawn
#

lmao

high current
#

Eh. My inventory is already bloated with the thousand other things that drop. I don’t really need a bunch of hats dropping

cursive peak
#

Idling for the Halloween cosmetics just made Scream Fortress unplayable after the first few days.

high current
#

The rate they drop at now is a “oh not a weapon or crate” surprise. Any more and it’d just be another sigh

languid haven
#

fuck even 1/4

high current
#

I think I have 18 originals since my last crafting session. And like 6 modest pile of hats

languid haven