#Team Comtress 2 Megathread - It's finally here

1 messages · Page 5 of 1

shell temple
chilly nova
#

but that's for build points

#

so, the sapper, right?

eternal jungle
#

HighlightBuildPoints just shows the blueprint doens't it

#

I don't think it does anything else

chilly nova
#

hold on i'll test that

sour sedge
#

No

#

The blueprint is part of the model

#

Not sure what build points does

eternal jungle
#

It just shows the blueprint model if you're allowed to build

#

otherwise it shows the can't build thingy

#

it's like a red x or something can't really remember

chilly nova
#

hm

shell temple
eternal jungle
#

yeah

#

that's all highlightbuildpoints does, right?

#

is change between the white outline and the red x

wheat herald
#

wouldnt the easiest way be to just place the building back down and then attach it to the engineer and make it intangible?

umbral siren
eternal jungle
#

guys i think mcoms is typing

wheat herald
#

yay!!

tight nexus
#

doesn't the game have a function to detect if a player is in a respawnroom?

shell temple
#

0.15.0

Funny Experimental Changes

Teleporter

  • Now upgrades passively, at a rate of 50 metal every 5 seconds
  • Max level increased to 10, but Engineers cannot upgrade past level 3
  • Levels past 3 exponentially improve teleporter cooldown rate, but do not increase health
  • This makes a teleporter that remains alive an ever increasing threat that must be destroyed with greater urgency
  • Teleporter cooldown now increases for each successive teleport within 5 seconds, to prevent flooding a single teleporter and requiring teams to maintain multiple teleporters to sustain teleporter rates

Dispenser

  • Engineer now backpacks his dispenser, making it active while hauled, healing and replenishing ammo/metal to nearby allies
    • Will be destroyed if the engineer dies
    • Can use all weapons while hauling a dispenser
    • To place the backpacked dispenser, use the build remote
  • All weapons are now eligible to receive ammo/metal from dispensers while active

Short Circuit

  • Now applies a stacking damage reduction to projectiles hit, rather than removing the projectiles
  • Now always applies self damage to the Engineer upon impact explosion
  • Increased damage 15 -> 20

Wrangler

  • Removed shield while active
  • Made fire rate bonuses actually doubled (including for rockets)
  • Shield still comes up and disables Sentry when Wrangler is no longer active

General Changes

  • Improved how some settings are set for user by default
  • Set default volume to 0.5
  • Made buildings consistently take damage like players (rounding up damage and health)
  • Made various healing/ammo effects consistent
  • Improved performance of some math functions
  • Improved default keybinds (thanks @tight nexus!)
tight nexus
#

but can you use the ` to open the console?

chilly nova
#

no :(

#

you can use it to close the console though

tight nexus
#

for some reason in the main menu only function keys work

round coyote
#

Why is this SO cool.? 😭

#

Is it open right now?

shell temple
#

yes

eternal jungle
#

what was the problem

#

with it not drawing

shell temple
#

i gave up

round coyote
eternal jungle
#

:(

shell temple
#

for another time

#

its too late to delay the playtest more for it

river iris
#

why am i stuck in first person while taunting, is that a balance change

chilly nova
clever creekBOT
#

*why am i stuck in

first person while taunting, is

that a balance change*

round coyote
shell temple
torpid grove
shell temple
#

anyone can join

shell temple
#

maximum amount without dying

torpid grove
shell temple
#

its required as a game designer to be on crack while making changes

#

windowmaker

rich moat
#

wtf i just read those patch notes

tight nexus
#

@shell temple what about these binds?

rich moat
#

you really are trying to go for the tf_beta style changes

silver sorrel
round coyote
torpid grove
#

bro imagine a 10x server with these changes

round coyote
river iris
#

how does anyone open console

round coyote
#

How do you open the game again..?

#

I did it two hours ago and I completely forgot.

river iris
#

server is not responding

#

😭

tight nexus
#

update

#

lol

river iris
#

fr?

tight nexus
#

no wait

chilly nova
round coyote
#

Do you open the game with Itch?

tight nexus
#

i lie, just a weird changelist

river iris
#

this is madness

chilly nova
#

indeed!

shell temple
#

pushing crash fix

chilly nova
midnight surge
tight nexus
#

i guess tomorrow we'll have an update

halcyon hamlet
#

I think engineer should not have 200 pistol ammo

round coyote
river iris
#

no he needs it

halcyon hamlet
#

That's powerful

round coyote
#

It isn't that powerful, and he needs it.

river iris
#

i think engineer needs an AK-47 copy and pasted straight from csgo

round coyote
#

Bro watched Voreby and said Engineer's pistol needs a nerf. 😭 🙏

halcyon hamlet
#

Give engy the gluon gun from half life

shell temple
#

server back

round coyote
#

Neato!

river iris
#

does launching tf2 with -nojoy genuinely make it less fun or is that just a myth someone told me

round coyote
#

Does this only have changes for Engineer?

storm cargo
#

yes, keep joy on at all times.

round coyote
#

Where.. Is everyone..?

river iris
#

also til that using just retry in the console for the first time attempts to connect to localhost

round coyote
#

How do I join the server..?

high wigeonBOT
#

@round coyote has leveled up! (4 ➜ 5)

chilly nova
round coyote
#

A few hours ago.

#

Like this server says to do this.

rich moat
#

it was updated 15 minutes ago

round coyote
#

But typing "connect mcoms" doesn't work.

#

So how do I update it..?

chilly nova
#

or use the itch app

round coyote
#

I do use the itch app.

#

How I I actually join..?

chilly nova
#

uhh click your profile and click check for updates in that menu

#

in the top right corner

round coyote
#

Thanks

fervent steeple
#

now those are some wacky changes

round coyote
#

Do I type somethingin the consol?

#

Or join what server..?

rich moat
#

submitted 2 of my medigun PRs steamhapp

chilly nova
round coyote
#

Oh sure.. Maybe it isn't.

#

For some reason it just doesn't pop up here.

#

And when I search for it, it doesn't pop up.

rich moat
river iris
#

game crash

round coyote
river iris
round coyote
#

XD

dusky sapphire
#

and click install (~28 mb)

#

it should work

#

note you also need source sdk base 2013 multiplayer (3 gb)

golden gust
#

this should be pinned

#

i had no idea how to install it for a bit since i couldn't find a search bar

river iris
#

perhaps

dusky sapphire
#

also if you cant launch through the itch launcher try opening the executable in the file directory

dusky sapphire
#

yw

#

when we do playtests, we often shut the server down for a quick game update to fix some gamebreaking issues so when that happens, you can right click on the game and click check for updates

mellow rose
#

Thought this would be more vanilla. Is it the plan to stay as vanilla as possible, to 'upgrade' or create a new game?

dusky sapphire
mellow rose
#

Thanks!

dusky sapphire
#

i feel like the current installation instructions put too much faith on the end user

#

cause like two people (including you) had no idea how to install to play

#

i feel like this will help increase the amount of players

round coyote
#

Yeah it probably would.

#

It is embarrassing how bad I was lol.

dusky sapphire
#

cuz we need more players for better playtesting

round coyote
#

Yeah. ^-^

dusky sapphire
#

since were trying to make fun changes for 12v12

river iris
#

whats the right channel to talk about tf2 code related stuff

clever creekBOT
#

*whats the right channel

to talk about tf2

code related stuff*

dusky sapphire
#

from what ive seen, this and the other tf2 thread is fine for it

clever creekBOT
#

*from what ive seen, this

and the other tf2

thread is fine for it*

dusky sapphire
#

#programming💻 might be fine too but its been used for mostly general programming things

#

not rly tf2

charred shadow
fast terrace
#

subtick impl should be done today

river iris
#

long awaited buff to the bat

mellow rose
#

What's the roadmap for anticheat? This would be a great opportunity to create a module that other variations can use as well 🙂 as a security specialist I would love to help

wheat herald
#

there's no point to adding an anticheat, users can just be manually banned since all servers will be run across a set of distributed servers

mellow rose
golden gust
#

tc2 should use vanguard

mellow rose
#

Just might be hard sometimes when Linux is involved :p

golden gust
#

most of the cheating problem would be gone if we stop involving linux

fossil vault
#

Booo

#

Also not really?

chilly nova
ruby cape
#

Not like most cheats + cheaters use Windows
It would fix the botting issue if it was still a thing

chilly nova
golden gust
#

i knew i was on to something

fossil vault
#

You can run bots just as easily on windows

ruby arrow
ruby cape
golden gust
ruby arrow
#

/s

#

I cheat all the time. See, before the match, I practice

#

so when I finally get to the match, I am prepared ahead of time

ruby cape
golden gust
golden gust
chilly nova
ruby arrow
fossil vault
#

Using Linux is cheating: it's unfair that you get better performance

chilly nova
#

jk

charred shadow
#

If we remove linux and dx8 we would have the henry update

golden gust
#

sex update

golden gust
#

coming out with dx12 support

ruby arrow
#

how could you treat me like this

ruby arrow
golden gust
#

yes

ruby arrow
#

I wanna see heavy's head reflect my scattergun when I blast it

#

I will airdrop you 50 crunchwraps

#

for this

golden gust
#

i want to see the reflection of medics in my market gardener

golden gust
ruby arrow
#

Yeah guys

#

the rtx 5070 performs like a 4090

#

steamhapp the future is so awesome

#

god bless our AI overlords

golden gust
#

wonder how intel’s gpus will be

#

and if they’re actually decent on linux

#

it’d be nice to have something good on both platforms

ruby arrow
#

I think Intel still has a lot of work to do

#

Since they're rewriting their kernel driver

eternal jungle
#

Arent nvidia gpus literally fine on linux

#

Idk what people are complaining about

ruby arrow
#

or, making a new one for their newer GPUs, getting rid of the cruft of their APU focussed i915 driver

ruby arrow
frozen hound
#

what is the tc2 server ip?

ruby arrow
#

and kind of exist in a parallel ecosystem from the rest of the graphics stack

eternal jungle
frozen hound
#

thats the default windows one or something
edit: like when you have a network adapter that's set to automatic, but no dhcp server to automatically assign an ip address?

#

right?

#

no but really, im a little clueless, there are playtests that happen? but when? and where can i play with others

eternal jungle
#

I don't think there's any set server yet

frozen hound
#

oooh okay

eternal jungle
#

it's random SDR address each time for now

#

either mcoms playtest servers or random ppls servers

shell temple
#

im gonna take a break from daily updates and playtests for a few days to recover

ruby arrow
#

I hope you feel better soon

#

❤️ gotta put yourself first

shell temple
#

the lack of sleep is affecting me physically and mentally i think

frozen hound
#

that would do it

ruby cape
chilly nova
eternal jungle
ruby cape
#

I want to use source mod

eternal jungle
#

There's still the issue with items

#

apart from that dedicated works fine though

#

but items thing can be figured out

ruby cape
#

This latest build makes the server instant crash for some reason

#

Last build didn't cause that

chilly nova
#

do you have a backtrace

ruby cape
#

Might be a me issue

#

No

eternal jungle
#

run in gdb

#

type bt

#

???

#

profit

ruby cape
#

It's a missing file most likely

eternal jungle
#

I wonder how valve is able to allow anonymous accounts to make use of SDR

#

seems like it would be abused

ruby cape
eternal jungle
#

What if I just opened 4 billion sdr sessions and used up all their addresses

ruby cape
#

That would be humorous in my opinion

chilly nova
#

@eternal jungle

static ISteamHTTP *GetISteamHTTP()
{
    if ( steamapicontext != NULL && steamapicontext->SteamHTTP() )
    {
        return steamapicontext->SteamHTTP();
    }
    #ifndef CLIENT_DLL
        if ( steamgameserverapicontext != NULL )
        {
            return steamgameserverapicontext->SteamHTTP();
        }
    #endif
    return NULL;
}
#

i wonder if it's using steamgameserverapicontext

#

and that's why it works for the schema

eternal jungle
#

It must be

#

idk for sure

#

if not we could init that first

#

idk where you would do that

golden gust
#

not to say mesa doesn’t also have issues

#

it’s linux

#

but they’re rarer

#

you can also do fun stuff like reliably use rc kernels

chilly nova
#
#ifndef NO_STEAM
// this context is not available on dedicated servers
// WARNING! always check if interfaces are available before using
static CSteamAPIContext s_SteamAPIContext;    
CSteamAPIContext *steamapicontext = &s_SteamAPIContext;

// this context is not available on a pure client connected to a remote server.
// WARNING! always check if interfaces are available before using
static CSteamGameServerAPIContext s_SteamGameServerAPIContext;
CSteamGameServerAPIContext *steamgameserverapicontext = &s_SteamGameServerAPIContext;
#endif

uhh

#

that might explain things?

golden gust
#

(though nova and nvk might improve that a lot more soon)

eternal jungle
chilly nova
#

actually no, why would this affect SteamHTTP()

eternal jungle
#

The client steam context is client only

eternal jungle
chilly nova
#

yeah

#

but which context is it using then

eternal jungle
#

client context?

chilly nova
#

i thought steamhttp was an export from steamapi

eternal jungle
#

Idk but I don't wanna go look at it again tonight

#

I'll look tomorrow

chilly nova
#

fair enough

#

so of course initing a client instance of steamapi will fix it, because it wants the client context

eternal jungle
#

server context should have http though

#

couldn't it just be changed to use that

chilly nova
#

yeah it should be possible

eternal jungle
#

people use steamtools sourcemod plugin on gameservers with anonymous accounts

#

and it has http

chilly nova
#

anyways i'm going to look at this more tomorrow

eternal jungle
#

I heard people saying cs2 is just worse on linux

#

on everything

#

so maybe not intel specific issue

golden gust
#

the game wouldn’t start on linux with the other two cards

#

maybe nvidia is really good

#

we even have hw accel in chromium now

eternal jungle
#

nvidia has firmware that runs on the arm core in the gpu now

#

enabled for linux drivers

golden gust
#

yeah but it SUCKS

eternal jungle
#

so the drivers don't even have to bother with like power management stuff

#

they can just do driver things

golden gust
#

i think up until the most recent driver version, there was a bug with reclocking in it

eternal jungle
#

actually GSP firmware does like all kinds of shit that the drivers used to have to do

#

I tried enabling it on windows but it didn't work

golden gust
#

so it affected the open and proprietary modules, unless you used a specific argument on the proprietary modules to use the built in driver equivalents

#

unless i was playing a game or something, the animations on my desktop would stutter like crazy

fossil vault
eternal jungle
#

replaycoding I think it would be enough to just change SteamHTTP to SteamGameServerHTTP

shell temple
fossil vault
#

Yeah that makes sense

delicate schooner
round coyote
#

Apparently no one can understand genius...

#

||(I'm not glazing, I'm boasting)||

eternal basin
#

For 18 years XD

#

Valve stopped caring at some point after blocking it from sourcemodders for years

And then at some point gave us a netprop to freely let us do that again

(Which we used for custom weapons)

eternal jungle
eternal basin
#

You and I think alike lol

golden gust
#
  • The L'Etranger can always attack while cloaked.
  • All Spy Revolvers can headshot.
    maybe i was wrong
    mcoms may be actively ruining tf2 to prop up hazard crew
#

it's the ultimate game of chess with valve

mellow rose
#

Found a bug, I think, teleporters now auto upgrade to level 10. is that intended?

fossil vault
#

Based on some of these changes, mcoms will prob go "yeah thats balanced and if you dont like it, do more crack"

mellow rose
#

TC2 is being tracked on the new H.A.T.S. (Hub for Amazing TF2 Stuff) wiki I made, to have an overview of the nice new tf2 mods. Feel free to update the page, or suggest other projects.
https://github.com/DeWolfRobin/HATS/wiki/Team-Comtress-2

GitHub

Hub for Amazing TF2 Stuff. Contribute to DeWolfRobin/HATS development by creating an account on GitHub.

fervent steeple
#

surprised no widowmaker changes in the funny engy changelist.
My thought was instead of damage bonus vs sentry target, damage bonus vs sentry-damaged targets for 3 seconds or w/e duration.

midnight surge
#

thinking abt the dispenser backpack again and ngl itd work 10x better as an unlock because you could just turn it into the mini dispenser

#

having a fast deploy dispenser would actually benefit the stat a lot, since you waste a lot of time building dispensers randomly after getting into scraps or placing other buildings

crystal roost
#

very epic

sage schooner
#

my game keeps adding the hidden cvar so noone can see or join my game

tight nexus
#

fixed players being able to enter the enemy spawnroom with taunts c:

sour sedge
#

I'll look into fixing the invis dispenser backpack soon™️

#

I passed the fuck out last night so I didn't check it out

tight nexus
#

bruh was it this easy?

shell temple
fervent steeple
#

oh right

tranquil mirage
#

wouldnt be faster the github workflow if it didnt use ccache?

#

i dont think it does much in ci/cd

shell temple
#

ccache is not working

#

if it was working itd be much faster

chilly nova
eternal jungle
#

replaycoding the items problem is not the steam http at all

#

I was mislead by the 2 people on github issues who said it was

#

but it's not

chilly nova
#

oh?

eternal jungle
#

pKeyValues->GetName() is null in CTFGameRules::ClientCommandKeyValues

#

so none of the clientcommands work

#

Idk how to fix it even

#

I'm gonna look in a while though

chilly nova
#

feel free to ping me for things btw

eternal jungle
#

It might be a vstdlib issue

#

either that or string tables question mark

#

I really don't understand it

#

I also only tried on linux I'm gonna try windows to see if it's the same or different

young osprey
#

So, I talked about improving the localization files yesterday and decided to give it a go. During my work I realised that most of the community created items and weapons that have actual support for item descriptions actually had thoses written on theirs steam workshop pages by theirs original creators, and that Valve, in theirs old fashion, did not make use of any of them. So I did... All of them, almost every single cosmetic and weapon in this game that was made with the intent of having it's own item description received either the original one made by theirs creators or brand new ideas written by me when there wasn't anything to go by. By the time TC2 begins to work on better localization files, please feel free to make use of my work as a base of you so decide to do so. I've also added a few tips for the loading screen making mentions of Scream Fortress, the comics, the wiki and the community server browser.

eternal jungle
#

Wtf bro it's a linux only issue

#

I got dedicated working perfectly fine on windows

#

got items working

#

the clientcommand thing is linux only problem

#

I wonder if it has to do with sdk 2013 dedicated server not including vstdlib

fast terrace
#

why has nobody fixed the debug build yet

#

its 1 line

eternal jungle
#

Maybe because the release build gives you debug symbols anyways so nobody cares?

#

idk

sour sedge
#

I need to get hot reload to work on my build at some point

eternal jungle
#

UB how do I fix clientcommands on linux dedicated

#

They work on windows

fast terrace
#

subtick impl done

#

needs testing

#

yeah this is a sniper buff

sage schooner
#

Has anyone else had an issue w changing loadouts? I go up to the resupply cabinet but it doesn't update

eternal jungle
#

It's normal

#

limited to updating loadouts only every 20 seconds

#

for all players

#

so if anyone has gotten a loadout update in the past 20 seconds you'll have to wait

#

You could change the behavior but maybe valve would ban you for spamming

sage schooner
#

Ohh alright, thanks

fast terrace
#

also GetLeavesArea isnt thread safe

shell temple
#

ik

#

its unfortunate because no engine access

eternal jungle
#

They should just release it

#

it already leaked anyways

fast terrace
#

@shell temple would u be open to hosting a subtick playtest

chilly nova
wheat herald
shell temple
#

but not today, sorry

shell temple
eternal jungle
#

Has anyone tried a 32 bit build

fast terrace
tight nexus
#

i can't make a fork of the 2013sdk

chilly nova
#

you already have a fork

tight nexus
#

but from tc2

eternal jungle
#

@chilly nova I think keyvalues are messed up on linux dedicated

chilly nova
#

hm, i'm still trying to get dedicated to run

eternal jungle
#

I'm getting stuff like CSoundscapeSystem::Init: Manifest 'scripts/soundscapes_manifest.txt' with bogus file type '1a.dx90', expecting 'file'

#

and the keyvalues getname is null for clientcommand

#

on windows everything is working perfect

chilly nova
#

what am i doing wrong here

eternal jungle
#

Is your server named server_srv.so

chilly nova
#

yeah

#

maybe it's not able to load the dll

#

LD_DEBUG time steamhapp

eternal jungle
#

Do you have libtier0 and libvstdlib

#

I had to take them from either the sdk 2013 multiplayer, or the source-sdk-2013 github

#

renaming/linking _srv ones to no _srv didn't work

chilly nova
#

i linked mine from the repo to libtier0_srv

#

oh

#

no i did it the other way around

sour sedge
#

Someone already implemented subtick??

chilly nova
#

to get it to build, but it should be linking with the ones in the dedicated server dir at runtime, right?

eternal jungle
#

Oh I didn't build dedicated I didn't think you needed to for sourcemods

#

I just took the server.so from normal build I didn't do anything special for build

chilly nova
#

oh huh

eternal jungle
#

maybe that's my keyvalues problem?

#

wrong vstdlib or something?

#

idk

chilly nova
#

would be very nice if gdb wanted to work

eternal jungle
#

it worked for me

chilly nova
#

i'm a cringe nixos user

eternal jungle
#

cringe

sour sedge
#

#programming💻 message

chilly nova
#

yeah sure let me just recompile engine

sour sedge
#

Yes

chilly nova
#

ok FINALLY

#

oh no it's not intel syntax anguish

#

looks like a nullptr deref

#

wait i may actually be incredibly stupid

#

i was running the 32bit version 😭

eternal jungle
#

bruh

chilly nova
#

i'm so good at this

eternal jungle
#

I was gonna try to build 32 bit version against the libraries from sdk depots to see if it works

#

I bet 32 bit server would fix the keyvalues problem

#

plus people like 32 bit servers for sourcemod stuff

chilly nova
#

can you even build against 32bit

eternal jungle
#

I think?

chilly nova
#

cause you're missing static libs

eternal jungle
#

can you take them from the release depots

#

or doesn't it work like that

chilly nova
#

doesn't work like that

eternal jungle
#

:(

chilly nova
#

only shared libraries are shipped in the depots

eternal jungle
#

and you can't build the server against the shared libraries?

chilly nova
#

you're missing a bunch of these for 32bit

#

and only some of them can actually be built from the source we have

clever creekBOT
#

*and only some of

them can actually be built

from the source we have*

eternal jungle
chilly nova
#

maybe that would work, assuming the abi hasn't changed

eternal jungle
#

OK well maybe that's a problem for another time

#

I wanna figure out this key values bug

shell temple
#

ping me if i messed up the engy changes revert

chilly nova
#

ok amazing i've managed to crash in the error code

eternal jungle
#

Wtf

#

what happens before that

chilly nova
#

some error in PhysParseSurfaceData(IPhysicsSurfaceProps*, IFileSystem*)

#

i must be doing something really wrong here lol

eternal jungle
#

steam error?

#

I just changed the steam appid stuff in gameinfo.txt

#

to be direct paths

#

or |all_source_engine_paths|

chilly nova
#

i copied the one from @jaunty fractal's pr

eternal jungle
#

okay he should have already fixed that I think

#

I only glanced at his stuff

chilly nova
#

but still it shouldn't be crashing due to an error message

shell temple
#

the error code is terrible

#

and broken

#

and flawed

chilly nova
#

clearly, but not much i can do about that

eternal jungle
#

mcoms should I host a comtress dedicated server

#

the windows one works perfectly

chilly nova
#

whatever i should probably go fix ccache anyways

shell temple
#

oh right

#

i think the linux one is like

#

uses more dedicated libs

#

this is a problem with sorucemod but in the inverse

chilly nova
#

?

shell temple
#

sourcemod doesnt work on windows

eternal jungle
shell temple
#

because of like vstdlib_srv having its own ded server singleton

#

so sourcemod uses that one

shell temple
#

is there really no other fix for it

chilly nova
#

can the sdk define it's own netmessages

eternal jungle
#

How tf do we figure out why keyvalues works perfect on windows dedicated

#

and is like corrupted on linux

chilly nova
#

cache hit rate 0.00 %

#

perfect 0 percent

chilly nova
#

and use protobuf for good measure

eternal jungle
#

Stupid question but what does ccache even offer

#

It already only recompiles changed stuff right?

chilly nova
#

the build directory is not saved between runs

eternal jungle
#

like I didn't do anything special for ccache and it's only recompiling a couple files

#

when I make changes

chilly nova
#

yeah that's just normal incremental building

#

but i'll rebuild everything if you clean your repo dir

eternal jungle
#

ah

chilly nova
eternal jungle
#

@jaunty fractal When you try inspecting a weapon on your linux dedicated server what happens?

#

like press f to inspect thing

fast terrace
chilly nova
#

is the code public?

fast terrace
#

no it is closed source

#

because I got locked out of my github account

#

for 2 hours

#

because I forgot my password

#

then it will be open source

chilly nova
#

lmao

fast terrace
#

i can just explain how it works

#

whenever we fire we send the timestamp relative to the current tick in the usercmd and lock the angles in place

jaunty fractal
fast terrace
#

the server then loops our shootpos to then and uses that time for lagcomp along with the shooting angles

#

i actually dont want to release this this makes sniper just way too oppressive

jaunty fractal
#

if you don't use server versions of libtier0 and that second one which i forgot kv's are gonna get nuked

eternal jungle
#

libvstd

#

huh

jaunty fractal
#

you would have to copy those from dedicated server

#

or cherry pick from my pr

#

since it works okay

jaunty fractal
chilly nova
#

even for build? shouldn't it get linked against the dedicated bin dir though

#

cause it'll link "libvstdlib_srv.so"

jaunty fractal
#

especially for build

eternal jungle
#

wait what do you mean copy from dedicated

chilly nova
#

and then when you run it, the search path is "DEDICATED/bin/linux64:DEDICATED/tc2/bin/linux64:..."

#

so why would it care about what you build against?

jaunty fractal
#

not sure, but there's some weird things differenciating both libraries in client version and dedicated server version
for some reason it cares, mostlikely because engine runner uses it and passes through communication with different class mappings i guess

#

i'm really just working on assumption that those two are heavily incompatible

shell temple
#

i cant find info about the differences between libvstdlib_s and vdtlib normal

clever creekBOT
#

*i cant find info

about the differences

between libvstdlib_s*

shell temple
#

there was something i sent somewhere

#

about sourcemod

#

in some discord server or on github

#

but i cant find it

fast terrace
#

its steam

shell temple
#

and it was when i was trying to get the sourcemod to work on linux client

#

and it wasnt working at the time

#

because it was only made for the dedicated server version of the game

#

i feel like that might be the problem

#

sorry, mean _srv not _s

eternal jungle
#

they're definitely different

jaunty fractal
#

fuck.... today script shit itself :<

eternal jungle
#

I don't think there's any getting around needing to use the _srv vstdlib

#

for dedicated

chilly nova
#

but what's the difference!!!!

eternal jungle
#

idk replay !!!!!!

#

normal client one breaks keyvalues and who knows what else

chilly nova
#

maybe it's some interface or something?

jaunty fractal
#

using standard libtier0 propably it was that one,
it would outright crash server when starting

#

same goes when building dedicated server using normal libraries and putting the server one

#

buuut idk

#

maybe classes are different?

eternal jungle
#

standard libtier0 worked fine for me

#

but standard libvtsd crash

jaunty fractal
#

so libvstd

eternal jungle
#

CUTLBuffer crash

chilly nova
eternal jungle
#

on windows this isn't even a problem, the sdk 2013 dedicaed server depot includes the proper libraries

#

and everything just works

chilly nova
#

emergency measures 🙏

eternal jungle
#

even without building special for dedicated

jaunty fractal
eternal jungle
#

offline players can't have items?

jaunty fractal
#

offline player cannot get checked items

#

buuut now i'm getting this

#

yesterday script was working fine

eternal jungle
#

it invalidates tickets after a new one is generated

clever creekBOT
#

*it invalidates

tickets after a new one

is generated*

eternal jungle
#

or after you basically do anything

jaunty fractal
#

when i pass the ticket in game

#

it just goes through

#

the same

#

and it's active for 10 minutes

eternal jungle
#

Mine were getting invalidated as soon as I generated a new one

jaunty fractal
#

idk... does steamhttp use something to flag the requests?

chilly nova
#

can you get it to run with an http proxy?

eternal jungle
#

yes

#

just change the urls

#

to http

chilly nova
#

oh

#

right

eternal jungle
#

or you could keep https and just trust a cert

#

that works on windows anyways

#

idk much about linux

chilly nova
#

i guess you could also just make it point at a local web server that forwards stuff too

jaunty fractal
eternal jungle
#

I just used mitmproxy

jaunty fractal
#

i think i'm still making wrong initialization in steam_http_wrapper

eternal jungle
#

Low key you're going about this the wrong way

jaunty fractal
#

but that approach worked yesterday... idk

#

yes, i know but given the fact that SteamHTTP did something okay, i went and modified game server to use curl

eternal jungle
#

I need to get my keyvalues stuff working and then I'll fix the steam http

jaunty fractal
eternal jungle
#

They weren't

#

but I'm trying something else now

jaunty fractal
#

in my case only thing that blocked keyvalues from being properly read was wrong libtier and libvstd

eternal jungle
#

I want to do it without the sed stuff

#

I think there has to be a better way

jaunty fractal
#

also does it /dedicated

chilly nova
#

i was using /dedicated +dedicated

#

and symlinking all the libraries to the _srv versions

jaunty fractal
#

but it would require you provide libtier0_srv and libvstd_srv to catalog src/lib/public/linux64

chilly nova
#

hm

wheat herald
#

ive had my health pack stolen from me 3 times today can you make it so that health packs can only be collected per player or is that impossible

chilly nova
#

i was linking libtier0 to libtier0_srv

jaunty fractal
#

use the server ones

jaunty fractal
#

symlink those from your dedicated server instance to src/lib/public/linux64

#

only those two need to be linked from dedicated server

#

wait....

#

unless.....

#

libsteam_api also has server version

#

nope

eternal jungle
#

What about replay_common_srv

#

When I try to vpc /dedicated it complains about that

jaunty fractal
#

as replay said you would need everything in lib catalog to be symlinked with _srv suffix

chilly nova
#

i symlinked that

#

and it compile

#

d

eternal jungle
#

but there isn't even any replay_common_srv :/

chilly nova
#

ln -s replay_common.a replay_common_srv.a

jaunty fractal
#

there's replay_common

chilly nova
#

literally the dumb stupid brute force solution

eternal jungle
#

I must have done something stupid

eternal jungle
#

because I don't have any replay_common

#

anywhere

#

oh

#

okay nvm

jaunty fractal
#

welp

eternal jungle
#

I accidentally moved it

jaunty fractal
#

everything in this catalog hast to be relinked to have _srv.so suffix

#

except libvstdlib_srv and libtier0_srv which has to be sourced from dedicated server install

eternal jungle
#

Okay yeah with /dedicated everything works

#

so yeah client vstdlib is just bad

jaunty fractal
#

it prolly provides different classes that server does not recognize

clever creekBOT
#

*it prolly provides

different classes that server

does not recognize*

jaunty fractal
#

since it has to go through engine first which used srv version of library
then to the game which uses yet different version

#

atleast that's my assumption

crystal roost
#

what is this

#

😭

slim seal
#

God it took me longer than I thought to find this thread (Only found it because it was linked in news). Threads are kinda hidden on discord and public servers are somewhat different to navigate.

I'm guessing this thread is also good for submitting feedback/ideas?...

sour sedge
fast terrace
chilly nova
fast terrace
#

probably the best way to fix this would be to write a sentinel at the end of the usercmd and then check for that and if its not present seek back

#

or just version the damn thing

chilly nova
#

@shell temple wrt the ccache thing: if you know what the issue is then please go ahead and fix it since I don't understand actions well enough

halcyon hamlet
#

Wait TF2 subtick is possible???

fast terrace
#

yes

halcyon hamlet
#

Will other mods be able to use Team Comtress 2 as a base?

fast terrace
#

also yes

wheat herald
halcyon hamlet
#

How it do that

chilly nova
fast terrace
#

annoyed cat

chilly nova
#

deadlock reference?

halcyon hamlet
#

Can I play team contress on my steam deck

tranquil mirage
#

ohamag

fast terrace
tranquil mirage
halcyon hamlet
#

How does it bypass the kernel level anti cheat

chilly nova
fast terrace
#

probably

eternal jungle
#

replay when you build dedicated for comtress does it build server for you

#

it's just doing mathlib and tier1 for me but no server and I can't figure out why

fast terrace
#

why are yall trying to build dedicated

chilly nova
#

shits and giggles

fast terrace
#

theres like

#

2 dedicated defines

#

in the entire sdk

eternal jungle
#

dedicated servers are less of a hassle to run

#

if it works fine why not use it

fast terrace
#

i mean

#

what are you trying to build

chilly nova
#

it built server for me, but i threw away the branch glub

fast terrace
#

you just copy server.dll onto a source dedi i dont understand what the issue is

#

the dlls are the same on listen and dedicated

chilly nova
#

inventory doesn't work for one

eternal jungle
fast terrace
#

doesnt really seem to work regardless

chilly nova
#

whar

#

it works fine on client/listen servers

fast terrace
#

switching my loadout just doesnt work

eternal jungle
#

inventory works fine on both

#

you have to wait 20 seconds unless you change it

chilly nova
#

oh?

fast terrace
#

wdym 20 seconds

#

    case kWebapiEquipmentState_InventoryReceived:
        // No need to keep the current request around.
        if ( state.m_pKVCurrentRequest )
        {
            state.m_pKVCurrentRequest->deleteThis();
            state.m_pKVCurrentRequest = nullptr;
        }

        // Don't allow spamming this api -- wait 20 seconds before we ask gc for items again
        state.RequestSucceeded();
        state.Backoff();
        state.m_eState = kWebapiEquipmentState_WaitingForClientRequest;
        break;```
#

are you serious

shell temple
#

yeah

chilly nova
#

lmao

jaunty fractal
#

yup

fast terrace
#

do i just comment out the backoff

jaunty fractal
#

if you fail it's going to tell you to backoff with further requests

shell temple
#

dont comment it out

#

its illegal

chilly nova
#

valve will send the police to your house 🙀

jaunty fractal
#

seen someone made repo which makes all backoffs as compile flag

shell temple
#

idk why they rate limited that request so much

fast terrace
#

dude ill just go reimplement steamitems like 2013 all over again

#

or whatever the fuck that one interface that just had like

shell temple
#

i mean tbh

fast terrace
#

GetItems(void*)
SetItems(void*)

#

great interface

shell temple
#

is it really a problem to make a GC proxy cache?

#

that you can request faster

jaunty fractal
fast terrace
#

what if i want to change my inventory more than once every 20 seconds

chilly nova
shell temple
#

exponential backoff btw

chilly nova
#

that's why

fast terrace
#

did they even test this shit

shell temple
jaunty fractal
#

yes

shell temple
#

why cant we have our own GC that proxies the tickets and inventory requests and caches approvals

jaunty fractal
#

that's why we've got steam networking with this update

shell temple
#

so we can do this stuff faster

chilly nova
#

make your own gc

shell temple
#

ik theres like some auth stuff

chilly nova
#

tos violator

fast terrace
#

at this point why not just make a local items file with all of the items

shell temple
#

there IS

jaunty fractal
#

it is there

shell temple
#

this is just for authing

#

between client and server

eternal jungle
#

I mean you could just make the server allow all item changes imstantly

shell temple
#

tbh can skip the check on listen server

eternal jungle
#

and then if web api check fails, revoke them

shell temple
#

for local player

#

that would be a good change IMO

jaunty fractal
#

server does just check if item you want to use exists in your backpack

shell temple
eternal jungle
#

oh no

chilly nova
#

oh no!

eternal jungle
#

big deal

chilly nova
#

it'll ruin the economy

#

because

#

uh

shell temple
#

they can just let tf2 mods use a good API route

#

or the GC directly

#

please

fast terrace
#

valve rocket launcher

chilly nova
#

counterpoint: coms has powerplay

shell temple
#

delete it from the schema

chilly nova
#

games can make their own schema anyways

#

or their own weapons

shell temple
#

delete all exploit weapons and patch all item bugs

chilly nova
#

not like it matters

eternal jungle
#

Wtf is this building partial (libs only)

#
VPC - Valve Project Creator (Build: Feb  5 2025 02:20:23)
Copyright (c) Valve Corporation. All Rights Reserved.

Source Path: /my_mod/src
Target Platform: linux64
Using Ninja generator.

Parsing: mathlib.vpc
Saving... Project: 'mathlib' File: 'mathlib_linux64_srv.ninja_inc'

Parsing: tier1.vpc
Saving... Project: 'tier1' File: 'tier1_linux64_srv.ninja_inc'

Building partial dependency set (libs only)...
..
#

It just stopped building server for me

shell temple
#

it doesnt include conservatives

fast terrace
#

vpc is held together with hopes and dreams just use cmake

shell temple
#

thats why its partial

eternal jungle
#

ok but how do I fix this

chilly nova
shell temple
#

you ignore it

eternal jungle
#

server was being built and then it just randomly stopped

shell temple
#

vpc is the best build system

#

idk why people hate it

#

its literally perfect

#

has perfect incremental builds

chilly nova
#

it has no issues

shell temple
#

has perfect dependency management

#

has perfect module system

fast terrace
#

i cant tell if youre being sarcastic or not

chilly nova
#

the best package manager is no package manager

#

vendor all your dependencies in compiled form

fast terrace
#

i did this but people got mad

chilly nova
#

ignore the haters

fast terrace
#

to build the project you must run the subst command because it requires an X: drive

chilly nova
#

i wonder if they fixed the weird perf issue in vpc with crcs

#

actually i can probably just check lol

eternal jungle
#

Can you check wtf is this partial dependency set

chilly nova
#

in a bit

#

it works for me

#
-    devtools/bin/vpc /tf /linux64 /ninja /define:SOURCESDK +everything /mksln "$solution_out"
+    devtools/bin/vpc /tf /linux64 /ninja /define:SOURCESDK /dedicated +dedicated /mksln "$solution_out"
#

and then symlink all the libraries

#
        new file:   lib/common/linux64/replay_common_srv.a
        new file:   lib/public/linux64/choreoobjects_srv.a
        new file:   lib/public/linux64/dmxloader_srv.a
        new file:   lib/public/linux64/gcsdk_sdk_srv.a
        new file:   lib/public/linux64/libtier0_srv.so
        new file:   lib/public/linux64/libvstdlib_srv.so
        new file:   lib/public/linux64/mathlib_srv.a
        new file:   lib/public/linux64/particles_srv.a
        new file:   lib/public/linux64/tier1_srv.a
        new file:   lib/public/linux64/tier2_srv.a
        new file:   lib/public/linux64/tier3_srv.a
eternal jungle
#

Wtf

#

Mine just doesn't build server and I don't know what I changed

chilly nova
#

maybe git clean your repo

jaunty fractal
#

maybe remove _vpc_

chilly nova
#

weird stuff can happen around that

eternal jungle
#

I removed vpc already

#

many times

jaunty fractal
#

hmm

eternal jungle
#

also removed docker container cache and storage

chilly nova
#

clean the entire repo

eternal jungle
#

it's even doing it in my mod_tf non comtress now

chilly nova
#

_vpc_ isn't the only dir

eternal jungle
#

I hate vpc

chilly nova
#

I love vpc

marsh stratus
chilly nova
#

do you know why?

marsh stratus
#

no and i tried very painfully to reverse engineer it and then gave up because it was boring and unrewarding

#

it's broken so badly that we stubbed ClientCmdKvs out in both OF and TF2C

#

but only on linux dedis

chilly nova
#

lol

#

thanks anyways

#

maybe it would just be easier to hack the client into a dedicated server

eternal jungle
#

but dedicated build fixes it though?

#

the keyvalues stuff only happens if you use libvstd.so rather than libvstd_srv.so

#

libvstd_srv.so fixes it

chilly nova
#

what happens if you run the tf2 dedicated server with a replaced server binary

eternal jungle
#

Idk but I got the tf2 server binary running on sdk2013 srcds

#

and real tf2 client connected to it

#

I think what you're suggesting would work fine

#

but wouldn't offer anything over sdk2013 server

chilly nova
#

ohmygod i need to stop leaving my random plugins in game random directories

sour sedge
#

@eternal jungle is it possible something really stupid is happening like its being put in m_pSub or m_pChain

eternal jungle
#

No it's to do with the keyvalues

#

For some reason keyvalues are broken if you use libvstd.so instead of libvstd_srv.so with the dedicated server

#

Myknakryu figured it out

#

I think he figured it out like 2 days ago actually

sour sedge
#

And all clientcommands are broken?

#

Including calling for medic?

eternal jungle
#

no

#

working keyvalues -> working clientcmds

#

corrupted keyvalues -> fucked clientcommands

#

In the way it was broken for me it broke all client commands but it's like random

jaunty fractal
astral yarrow
#

is server always open or only in test times

jaunty fractal
#

that includes asking server to set your loadout

sour sedge
#

Any leads to where KeyValues is being corrupted or is it just pure rng

chilly nova
#

in engine somewhere

sour sedge
#

And pulling vstdlib from live resolves it

#

?

eternal jungle
#

vstdlib and vstdlib_srv seem different

#

for whatever reason

#

if you use the non _srv one with the dedicated server you get the corruption

sour sedge
#

Why would the server be trying to load the clients vstdlib though huh

eternal jungle
#

Well if you build everything the default is to load a vstdlib with that name, and even if you rename vstdlib_srv to vstdlib it doesn't work

#

but if you build dedicated then it all works good

sour sedge
#

Mmm

jaunty fractal
#

if it was compiled to link normal vstdlib and compiled using normal vstdlib

eternal jungle
#

^

jaunty fractal
#

if it were to be compiled with server vstdlib then the server binary when loading client vstdlib shits itself

#

same goes other way around

shell temple
#

but we use steam networking, it isnt very special

sour sedge
#

Off topic but I just realized that in the x64 folder on windows there's a vstdlib_s64.dll that doesn't appear to be loaded

chilly nova
#

that's steam vstdlib isn't it

sour sedge
#

Ah probably

chilly nova
#

someone ping me in 4 hours to remind me to fix my tf2 game files before i get vac banned

jaunty fractal
#

well this is new

#

no wait.... the servers reset today

#

darn

sour sedge
#

Can someone send me vstdlib and vstdlib_srv I don't want to go through the effort to setup linux rn

#

Gonna just open NSA spyware and rip it apart

chilly nova
#

depotdownloader...

#

or even steam

chilly nova
sour sedge
#

No

chilly nova
#

:(

sour sedge
#

Same discovery as us but they imply the _srv ones are more up to date?

jaunty fractal
#

nah

#

seems like those are different beasts

#

mostlikely server classes have less attributes or sth

#

or just different mapping all together idk

eternal jungle
#

I think it is the same discovery

#

the soundscapes errors are also caused by bad keyvalues

jaunty fractal
#

ay

#

wait.... was that all i needed?

tight nexus
#

3 hours of trying to understand why ragdolls only collide with prop_door_rotating

#

didn't understand shit

jaunty fractal
#

let me run one more test to be sure in vm without steam

sour sedge
jaunty fractal
#

to get curl authorize properly

#

since all i was getting was

{
    "result": 21,
    "error": "steamauth failed",
    "steam_errorcode": 101,
    "steam_errordesc": "Invalid ticket",
    "identity": "1612d7493adc201e10bba41f1c9cfc"
}```
chilly nova
#

dont tell me it gates the user agent

jaunty fractal
#

maybe the first call has to have correct user agent ????

#

idk

chilly nova
#

could also maybe be Accept idk

golden gust
#

when is tc2 coming to steam

vivid crow
#

eta soon

jaunty fractal
#

i have one success... i started server on Oracle Free tier ARM
but now it again shat itself and returning bad status

#

oh wait i can see what i fucked up

sour sedge
#

Right now at least

chilly nova
#

yeag

sour sedge
#

I'll leave that up to you because I'm gonna go to the bar soontm

chilly nova
#

i'm gonna go work on something more relaxing for now

#

too much brain

sour sedge
#

I'll also look at the backpack dispenser soontm I forgot to rebuild my tc2 after pulling so I didn't have that yet

#

So true little friend so true

chilly nova
#

ask copilot

sour sedge
#

I heard they added google gemini to that slop for some reason

clever creekBOT
#

*I heard they added

google gemini to that

slop for some reason*

jaunty fractal
#

IT WORKS

#

FCKING HELL

chilly nova
#

👀

jaunty fractal
#

IT LOADED

chilly nova
#

awesome

jaunty fractal
#

there's my overdose

#

the code might be janky... but it works

#

if someone out there wants to clean the code out i'll commit my changes to my repo

#

my god one fucking week

vernal hull
#

Got damn!! That’s sick

sour sedge
#

I hate force pushing

chilly nova
#

force pushing to all my repos to piss you off

sour sedge
#

Oh wait wrong channel

chilly nova
#

epic fail

sour sedge
#

Whatever, I feel like I always need to justify when I force push to one of my \branches because I am a filthy rebaser

chilly nova
#

it's still better than merging

jaunty fractal
#

feel free if you're interested in streamlining the code or adding defines so it works correctly

eternal jungle
eternal jungle
#

I think I forgot to mention this morning

#

but it's that simple

#

also it still works on listen server

jaunty fractal
#

really tho?

eternal jungle
#

Yeah

jaunty fractal
#

Kurwa.....

#

let me check

eternal jungle
#

Literally just ctrl+f SteamHTTP in the file and replace with SteamGameServerHTTP

jaunty fractal
#

yeah yeah.. .that's what i'm building now

high wigeonBOT
#

@jaunty fractal has leveled up! (5 ➜ 6)

eternal jungle
#

The gameserver anonymous steam thing has http and it's already initialized

jaunty fractal
#

yeah it works

#

Thanks for help xD

vague knoll
#

Wrangler self damage?

#

Is sentry jumping gone?

eternal jungle
#

You can just comment it

#

The only github account I have is an IRL one that I don't want to use for this

jaunty fractal
#

how can i credit you?

eternal jungle
#

It doesn't need credit it's a simple discovery

jaunty fractal
#

type the username

#

okay

rich moat
#

out of curiosity is it called HTTP since thats what it was when they made it and its HTTPS now or is it still just HTTP

chilly nova
#

well HTTPS is still HTTP

#

just over tls

jaunty fractal
#

i'm making updated build script for linux dedicated server

#

i'll ommit providing libtier0_srv and lvstdlib_srv from PR

#

script will ask user to provide it themselves

chilly nova
#

does it cause errors

jaunty fractal
#

yes

#

it causes errors

chilly nova
#

what i'm confused about is why it causes errors

#

because that shouldn't actually be getting loaded afaik

jaunty fractal
#

my only guess is that there's some difference
it shouldn't but... somehow is
and engine mapped object is unreadable by compiled game

#

well.. that's my theory given the fact that at some point i had this from keyvalues on server

jaunty fractal
astral yarrow
#

thx for the answer

jaunty fractal
#

i can host 1 server in EU, it started rn with mvm_ghost_town running (nearly 4AM here)
but might be slow since it runs using Box64

eternal jungle
#

Dedicated works now

#

Or well it already worked but now the two issues (key values and steam http) have been resolved

terse plaza
#

ill look into it at some point mayb tonight

shell temple
#

LGTM, but @chilly nova can you give a final lookthrough?

shell temple
#

yeah

#

how was keyvalues fixed btw?

eternal jungle
#

By using libvstd_srv.so that comes with the sdk 2013 dedicated server depot rather than libvstd.so

#

both for building and running

shell temple
#

right

eternal jungle
#

and you only need to do it for like 5 or 6 of the libraries, not all of them

chilly nova
#

symlink it as part of the commit instead

#

@shell temple what are you thoughts on just copying the serverside tier0 and vstdlib libraries into the repo