Guild icon
DDraceNetwork
Development / developer
Development discussion. Logged to https://ddnet.org/irclogs/ Connected with DDNet's IRC channel, Matrix room and GitHub repositories — IRC: #ddnet on Quakenet | Matrix: #ddnet-developer:matrix.org GitHub: https://github.com/ddnet
Between 2024-11-09 00:00 and 2024-11-10 00:00
Avatar
ChillerDragon which block is used for spawn in the pvp arena
Avatar
GitHub BOT 2024-11-09 05:38
Windows 10, Steam, default engine (Play DDNet in Steam) For me, reproducible if you tab in and out several times. When tabbing OUT of the game my cursor is visible but won't move even after left or right clicking. Seems like left and right clicks are registered as usual by whatever program you tab to, but you can't move the mouse for a good 3 seconds
Avatar
ws-client BOT 2024-11-09 05:38
<ChillerDragon> @Evelyn 132
Avatar
GitHub BOT 2024-11-09 05:58
Fixes running tests locally with custom sqliterc such as .mode table Which would create a different output format for the select statements
Avatar
MilkeeyCat 2024-11-09 06:01
After which packet a player is technically connected to a server?
06:06
<ChillerDragon> thats the last one the client has to send before the server starts sending snapshots
Avatar
MilkeeyCat 2024-11-09 06:07
Ok, thanks
Avatar
ws-client BOT 2024-11-09 07:30
<ChillerDragon> yes i know some things but nothing i can discuss in a public channel because its a cat and mouse game
07:31
<ChillerDragon> for the same reason i will also not include it in the public modification ddnet++
Avatar
ChillerDragon
08:04
How to get a weapon license
08:04
I want to use taser
08:05
I want to use taser
Avatar
GitHub BOT 2024-11-09 08:08
0929b70 Ignore ~/.sqliterc in integration tests - ChillerDragon c8c0c63 Merge pull request #9222 from ChillerDragon/pr_ignore_sqliterc - def-
Avatar
@Learath2 read this for a laugh https://wiki.gentoo.org/wiki/WD-40
👍 1
Avatar
ws-client BOT 2024-11-09 08:46
<ChillerDragon> @Evelyn you need a high enough police rank to use the taser
Avatar
Avatar
♂S1mple♂
why would anyone need that many buttons?
This is super annoying. Now I have to change 2x numbers every time I wanna place another teleport.. The new "View" is really nice, but please merged all the teleports into one like it used to..
Avatar
ws-client BOT 2024-11-09 09:13
<ChillerDragon> Thanks aoe c:
Avatar
GitHub BOT 2024-11-09 10:18
Avoid uploading quad for race flag in finish infomessages every frame by adding it to the existing quad container.

Checklist

  • [X] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test (especially base/) or added coverage to integration test
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [ ] Changed no physics that affect existing m...
Avatar
Avatar
♂S1mple♂
why would anyone need that many buttons?
cyberfighter 2 2024-11-09 10:23
language barriers boutta be so fun
Avatar
Avatar
Ryozuki
@Learath2 read this for a laugh https://wiki.gentoo.org/wiki/WD-40
Heh, cute name
Avatar
Avatar
cyberfighter 2
language barriers boutta be so fun
♂S1mple♂ 2024-11-09 10:28
okay?
Avatar
ChillerDragon make it impossible to enter the tournament block in the team
Avatar
ws-client BOT 2024-11-09 10:50
<ChillerDragon> @Evelyn done
Avatar
And is it possible to implement an anti-cheat, from cheat clints? I even know how to implement it
Avatar
ws-client BOT 2024-11-09 11:03
<ChillerDragon> i thought about building some open source anti cheat but heinrich advised against it and then i also was a bit lazy i dont think it will happen
Avatar
MilkeeyCat 2024-11-09 11:04
Why not?
Avatar
ws-client BOT 2024-11-09 11:04
<ChillerDragon> what why not
Avatar
I just know how it can be implemented, can you execute commands in the game console for the player?
Avatar
ws-client BOT 2024-11-09 11:04
<ChillerDragon> not sure what you mean @Evelyn
Avatar
MilkeeyCat 2024-11-09 11:05
Why heinrich advised against it
Avatar
For example, a player wants to write in the say 105 console can the server do it on behalf of the player
11:06
So that , for example , this message 105 was sent from the player himself , but it was executed by the server in the console
Avatar
ws-client BOT 2024-11-09 11:06
<ChillerDragon> @MilkeeyCat i lost the log but i assume it was because anti cheat should be developed in private to not give botters a chance to bypass it
Avatar
Avatar
Evelyn
So that , for example , this message 105 was sent from the player himself , but it was executed by the server in the console
?
Avatar
ws-client BOT 2024-11-09 11:07
<ChillerDragon> ?
Avatar
Avatar
Evelyn
So that , for example , this message 105 was sent from the player himself , but it was executed by the server in the console
Is it possible?
Avatar
ws-client BOT 2024-11-09 11:07
<ChillerDragon> i did not understand your message
11:08
<ChillerDragon> you mean chat on behalf of others?
Avatar
See The player of my server, for example, wants to write in the game console that opens on f1, he wants to write "say im cheater", can the server write it for him in the console so that it is executed and the command in the console was executed, that is, the message was sent
11:11
This can help Create an anti-cheat
11:12
If in 2 words I want to know if the server can execute a console command on behalf of the player?
Avatar
ws-client BOT 2024-11-09 11:12
<ChillerDragon> ah no the server has no access to the clients console
Avatar
I just know how the cheat works, for example, a player wants to use balance bot, he clicks on the button on which he linked this function, and the following is performed in the game console "namecheat_balancebot" If we could keep track of this
11:15
Then I think it would be easy to create an anti-cheat
Avatar
ws-client BOT 2024-11-09 11:16
<ChillerDragon> yes but you can not access that
Avatar
RusskyBlock was able to somehow implement the anti-cheat
Avatar
ws-client BOT 2024-11-09 11:19
<ChillerDragon> yes but not by accessing the clients console
Avatar
But here's how
Avatar
ws-client BOT 2024-11-09 11:20
<ChillerDragon> you can try asking them for their antibot module they also use a ddnet based mod with an antibot api maybe they use that and are willing to share it
Avatar
GitHub BOT 2024-11-09 11:21
7ebaf1b Use quad container for race flag in finish infomessages - Robyt3 d0fc4af Merge pull request #9223 from Robyt3/Client-Infomessages-Quadcontainer - def-
Avatar
They demand money for the way it works
Avatar
I have some time and motivation, is there a way to add some debug lines in ddnet? I mean something like hitbox, tick-trails (line from one tick to another), slow-tickrate options? (edited)
Avatar
Avatar
ws-client
<ChillerDragon> ?
When your vanilla+ server starts recording demo, does it automatically stop recording when match is finished? I just wanted to double check because I know some mods didn't do this
12:57
Also, can it record/save the statboard .csv file at the end of the match also, like when the server command record is given at the beginning of the match (possibly by a vote)?
Avatar
Avatar
Ryozuki
@Learath2 read this for a laugh https://wiki.gentoo.org/wiki/WD-40
i only got it after reading half of the page then i snorted like a gremlin
Avatar
Avatar
Assa
I have some time and motivation, is there a way to add some debug lines in ddnet? I mean something like hitbox, tick-trails (line from one tick to another), slow-tickrate options? (edited)
13:05
change this constant to a server config and hope everything just works? lmao
Avatar
Avatar
Assa
I have some time and motivation, is there a way to add some debug lines in ddnet? I mean something like hitbox, tick-trails (line from one tick to another), slow-tickrate options? (edited)
line from one tick to another?
Avatar
ctrl-shift-d sorta thing?
Avatar
Avatar
Solly
change this constant to a server config and hope everything just works? lmao
you are too naive justatest
Avatar
Avatar
zhn
you are too naive justatest
i know it wotn just work
13:06
but i can dream harold
13:06
i mean ill see what happens
Avatar
Avatar
Assa
I have some time and motivation, is there a way to add some debug lines in ddnet? I mean something like hitbox, tick-trails (line from one tick to another), slow-tickrate options? (edited)
since tickrate should be synchronized between both client and server sounds kinda unrealistic to make it work that way honestly
Avatar
thats why it should be a config
Avatar
by whom
Avatar
the server
13:07
it doesnt make sense for the client to have it since.. ther can be multiple clients
13:07
having non matching tickrates will screw everything
13:08
or cause some funny rubberbanding more likely (edited)
Avatar
ah demos would be screwed over by variable tick speeds
13:17
oh not really you can just always play back at default
13:19
MACRO_TUNING_PARAM(GroundControlAccel, ground_control_accel, 100.0f / SERVER_TICK_SPEED, "Acceleration speed on the ground") MACRO_TUNING_PARAM(GroundFriction, ground_friction, 0.5f, "Friction on the ground") MACRO_TUNING_PARAM(GroundJumpImpulse, ground_jump_impulse, 13.2f, "Impulse when jumping on ground") MACRO_TUNING_PARAM(AirJumpImpulse, air_jump_impulse, 12.0f, "Impulse when jumping in air") MACRO_TUNING_PARAM(AirControlSpeed, air_control_speed, 250.0f / SERVER_TICK_SPEED, "Max speed the tee can get in the air") why are these in terms of server tick speed?
Avatar
because if you will really change tick speed, constant physics tunings will screw it up immediately
13:23
like setting higher tickspeed will give you resulting very fast physics
13:23
and so on
Avatar
Avatar
zhn
because if you will really change tick speed, constant physics tunings will screw it up immediately
so when these are later divided or multiplied (my head hurts) by tick speed it should be the default tick speed
13:25
uhoh
13:26
i assume tick slowdown wants slow physics as well
13:27
but someone could theoretically want different tickrate with same physics (even though any more just takes up more resources, and any change breaks existing physics)
13:27
you can still change the tickrate (with constnat physics) just not at runtime (edited)
Avatar
Avatar
Solly
but someone could theoretically want different tickrate with same physics (even though any more just takes up more resources, and any change breaks existing physics)
thats why they're divided
Avatar
having less or more ticks still breaks physics
13:28
cuz floating pt error and all that
Avatar
there's another reason for this, code inconsistency
13:29
i think its fine if accel is in terms of tickspeed
13:29
just makes changing it at runtime leave out 1 usecase whichever way you do it
13:29
^ adding the ability to
13:30
i think the slow down (and / speed up) case is more warranted for tas
Avatar
youll just end up moving it from macro to actual usage function
Avatar
alot of the times the tickrate is used it comes from a function labeled TickSpeed or GameTickSpeed
Avatar
something like Tune(...) wrapped with TickSpeed() called inside on every query
Avatar
u think it should be a tune?
Avatar
it shouldnt be able to be changed in tuning sections and also doesnt have to be float
Avatar
what exactly shouldn't be able to be changed in tuning sections?
Avatar
tickrate (or speed as its called) (edited)
Avatar
because you then have different parts of the map running at different tickspeeds
13:33
and things like the chat are run of the ticks aswell
Avatar
that's why i proposed to use something that wraps tunings and returns it tickrate-agnostic value
13:34
so you just call Tune(Name) and it returns you something like ActualTuning / Server()->TickSpeed()
Avatar
you could seperate ticks into physics ticks and everything ticks for that to work
13:35
wait wait what
13:35
Name being any current tuning which is then modified by a global speed?
Avatar
well that can already be done manually, and sure might be useful
13:36
i meant actually changing the tick speed
13:36
for tas sing
13:36
or debug
Avatar
yeah, what's wrong with runtime calculating?
Avatar
if you modify tunings you arent actually modfying the tick rate
Avatar
you jump from one to another, i can't really undertand you xd
Avatar
I only want a slower timerate for debugging, thinking about it you could do it with a server and client with cheat engine by slowing the process (edited)
Avatar
initial problem was: physics tunings are compile time defined in terms of tickspeed
Avatar
Avatar
Assa
I only want a slower timerate for debugging, thinking about it you could do it with a server and client with cheat engine by slowing the process (edited)
this
Avatar
if you need tunings to be tickspeed agnostic, you should calculate it in runtime, rather in compile time
Avatar
you can already cheatengine both the client and server that should work
13:38
we want to change the tickrate (or are suggesting anyway) (edited)
13:38
and have physics slow down and speed up
Avatar
ah, my god
13:39
oke i got you
Avatar
hehe oke xd
Avatar
i was talking in terms of introducing high-tickrate servers
13:39
i.e for racing
13:39
or vani
Avatar
i dont see the point in that, are people limited by the tickrate now?
Avatar
Avatar
Solly
i dont see the point in that, are people limited by the tickrate now?
physics are limited to it
Avatar
well yeah but are people experiencing problems in what they want to do
Avatar
this would actually change physics, at least it would require a patch, I can already find setups which work/don't work depending on position, ticks and subticks
Avatar
" I can already find setups which work/don't work depending on position, ticks and subticks" then yeah
13:40
well the position one is obvious
13:40
can the client send input in subticks?
Avatar
if all input is shoved into the next tick then if youre 20% into a tick
13:41
then it shouldnt affect anything
Avatar
yes, gravity is not applied in a subtick* meaning you mostly move in straight lines between ticks
13:42
if you higher the tickrate, your falling curve will get smoothed out changing the movement behaviour
Avatar
well thats tickrate
13:43
im talking about setups failing due to somehow starting on subticks
13:43
or just on a certain tick
13:43
physics shouldnt be dependent on the tick
13:43
apart from moving stuff
Avatar
you can only do inputs on tick, however start and finish times are calculated in subticks (edited)
Avatar
map start and finish times?
Avatar
that seems excessive
13:44
but fine
13:44
doesnt effect setups
Avatar
there are servers tracking the milliseconds, this is calulated, otherwise a 50Hz game couldn't do that, since all times would apply in 0.02 ms (edited)
Avatar
0.02s*?
Avatar
i think thats fine
13:46
should still be okay to do it in subticks, it should still be determanistic (edited)
Avatar
the felt "randomness" comes from minor changes in positioning and chaos, I made a map recently exploiting this
Avatar
eg: 3 blocks from the map start start holding right no matter what tick your on the subtick when you cross will be the same
Avatar
here, if you can finish this map without bruteforcing you understand the teeworlds engine.
13:49
you do the same trick over and over, notice you sometimes make it, sometimes clip, sometimes just die, due to positioning
Avatar
if it requires extreme precision, the lack of my bodies precision will come into play
Avatar
exactly
Avatar
that isnt ... the engines fault
13:51
i mean if the physics engine could ensure i dont have skill issue. id be delighted
Avatar
no, you can lineupt for each part and make it, you don't have control otherwise over where your ticks are
Avatar
the physics shouldnt be dependent on what tick you start a map or setup on
Avatar
it's not the tick (in a sense of which number the tick is), it's the position where you start your input on, since the input is only calulated in ticks, the rest of this parts can lineup
🍻 1
Avatar
Avatar
Assa
it's not the tick (in a sense of which number the tick is), it's the position where you start your input on, since the input is only calulated in ticks, the rest of this parts can lineup
well yeah... thats not the fault of the game engine
Avatar
well yeah ofc it's the fault of the engine xD but nothing I would fix (or we should fix)
Avatar
if you make sure your position is correct, (where an imprecise human would struggle given theyu didnt have a debug ui) then sure a setup will fail
13:54
a perfect human would have no trouble
Avatar
you don't need a debug ui, there are normal client commands to show your position
Avatar
a perfect human could also predict the inconsistent tick dependent physics of such a hypotheitcal server
Avatar
Avatar
Assa
you don't need a debug ui, there are normal client commands to show your position
yeah what i meant by debug ui
13:54
i only ever use it to see if the x position is 53 or 47
13:55
ie lined up to a wall
Avatar
also this ui is kinda* inaccurate, since the comma position only has a rounded multiple of 1/32, but that's yet another topic
Avatar
if you use commas for fractioanl parts do u also call the bit which is fractional comma part?
13:56
that makes sense
13:57
o wait is that why its 53?
13:57
and 47
Avatar
cuz floor(1/32 * 100) / 100 = 0.03 (edited)
13:57
what is the actual position?
13:58
and why can i always stack ontop of someone if that innacurate position matches (tested with hf and dummy, as soon as both numbers match i can drop and always stacks) (edited)
13:59
i guess if im aligned to 0.03 through whatever means i did so, then it also aligns perfectly
Avatar
it's just rounded down, you have per tile 32 positions, (or 33 depending how you count)
14:01
the actual position for 47 is then 15/32 and for 53 17/32
14:02
I guess this is just truncated, because there is little of no value to show more precision
Avatar
Avatar
Assa
here, if you can finish this map without bruteforcing you understand the teeworlds engine.
also this map can reliably reproduce the corner_case if anybody ever needs a map for testing 😉
Avatar
ws-client BOT 2024-11-09 14:13
<ChillerDragon> @Pathos i do not see replies i just assume you are talking to me. I think demo recording stops correctly with round end but i would also have to test it.
14:14
<ChillerDragon> do you need the csv file on the server or client side? For what? The server can already post round end stats to discord or as json to a custom http endpoint. csv and to file is planned but nobody had a real usecase for it yet.
Avatar
it appears to have well.. broken
14:23
when i tried to change the tickspeed lmao
14:26
i cant turn antiping off?
14:28
apart from prediction going AAAAAAA, different tickrates are fine
14:28
and when you change the tickrate prediction goes mad for a bit
Avatar
from my understanding, changing for example from 50Hz to 100Hz will apply gravity twice (for example), so what do you mean by "fine" or do you mean just slowing time with cheat engine?
Avatar
by fine i mean feels as if you cheat engined it
14:30
but tis really not
Avatar
oh really 🤔
Avatar
what i have done just replaces every occorunce of trying to get the tickrate
14:31
with a server setting (edited)
14:31
minus some bits in demos cuz it does that seperatley
14:31
but connection problems, and other players and prediction in general is just borked
Avatar
oh yes, with double the tickrate you send twice as much packages
14:32
well, at least part of the netcode scales like this
Avatar
shoiuldnt be a problem on localhost (edited)
14:33
i probably shouldve tried changing the constnat first
14:35
changing the constnat works fine
Avatar
@heinrich5991 I am working on #4523, should I add a MapBug (similar to the double grenade bug) or just fix the bouncing-case?
Avatar
Hi, I was checking some DDNet code and stumbled across this function: https://github.com/ddnet/ddnet/blob/master/src/game/collision.cpp#L920 This is used to determine for example when start and fin...
Avatar
Avatar
Solly
changing the constnat works fine
i dont think the client is getting the updated setting and idk y MACRO_CONFIG_INT(SvTickRate, sv_tick_rate, SERVER_DEFAULT_TICK_RATE, 0, 100, CFGFLAG_SERVER | CFGFLAG_GAME, "Number of ticks per second") (edited)
Avatar
bad bot
Avatar
is balance bot allowed
Avatar
in most places no
Avatar
is balance bot allowed in kog
Avatar
probably not
14:49
"Don't use any tool (client, bot) allowing you to cheat"
14:49
bit of a circular definition there
Avatar
but i wouldnt risk it
Avatar
u think i will be banned i already use it
14:49
just dont tell them
Avatar
just git good
14:49
:)
Avatar
im top 170!
Avatar
git... better? at balancing?
14:50
(also wow)
Avatar
thx for advice ill be sure to think about it
Avatar
MilkeeyCat 2024-11-09 14:51
is a client which makes my aim better allowed?
Avatar
precision yes, accuracy no
Avatar
yes @MilkeeyCat
Avatar
wait really
Avatar
lol, time to make my precision worse and only be able to hook in 8 directions
Avatar
that would be making your aim worse
Avatar
aimbot client is allowed i think
Avatar
i meant if you use the thing i use which multiplies ur mouse position by an amount to fix low precision with low max distance
Avatar
Avatar
sannitt
aimbot client is allowed i think
"Don't use any tool (client, bot) allowing you to cheat"
14:53
for kog atleast
14:53
and for any competative mode defaintley not
Avatar
i would call aimbot a cheat
Avatar
Avatar
sannitt
aimbot client is allowed i think
absolutely not - any client modification giving you an advantage is prohibited and will lead to a punishment
Avatar
Avatar
sannitt
aimbot client is allowed i think
Why would you think its allowed AINTNOWAY
Avatar
Avatar
ryuma
Why would you think its allowed AINTNOWAY
i was bored
🤣 1
Avatar
MilkeeyCat 2024-11-09 15:45
Go read a book next time
Avatar
im actually ok
15:56
thx for suggestion
Avatar
GitHub BOT 2024-11-09 16:11
closes #4523 This MAY affect existing maps, but to a very small degree. This also changes normal behaviour right now, since "normal behaviour" is a bounce with 0 back velocity. @heinrich5991 should I add a MapBugfix (similar to the double grenade bug) option to this? Somebody besides me should also test this in-game. A profiling (before->after) would be nice, since this may cause some overhead.

TestMap

A testmap where you can skip a freezetile with bouncing [bounce_tes...
Avatar
@Robyt3 can you also take a look at my PR? I don't understand what the linter problem there is. This is formatted like anything else in this file
Avatar
why do we need the line static const vec2 StackedLaserShotgunBugSpeed ​​= vec2(-2147483648.0f, -2147483648.0f); in the laser.cpp file?
Avatar
// The method is needed only to reproduce 'shotgun bug' ddnet#5258 // Use SetVelocity() instead. void CCharacter::SetRawVelocity(vec2 NewVelocity) { m_Core.m_Vel = NewVelocity; }
16:28
gets used here
Avatar
Hey why are speeders not rendered when you have too many (edited)
16:37
very not cool
Avatar
they are shy and dont want to be rendered
Avatar
Avatar
exosphere
why do we need the line static const vec2 StackedLaserShotgunBugSpeed ​​= vec2(-2147483648.0f, -2147483648.0f); in the laser.cpp file?
to reproduce a "bug" that was actually used in some maps, so we had to add some code to mimic the bugged behaviour
Avatar
Avatar
Teero
Hey why are speeders not rendered when you have too many (edited)
ok it seems to be caused by m_GLTileBufferingEnabled when disabled it renders the arrows
Avatar
does anybody know a map with a huge automatic movement part? I need it for testing (edited)
16:44
that is exactly what i was building rn @Assa xddd
KEKW 1
Avatar
m_pEngine = Kernel()->RequestInterface<IEngine>(); m_pEditor = Kernel()->RequestInterface<IEditor>(); m_pFavorites = Kernel()->RequestInterface<IFavorites>(); m_pSound = Kernel()->RequestInterface<IEngineSound>(); m_pGameClient = Kernel()->RequestInterface<IGameClient>(); m_pInput = Kernel()->RequestInterface<IEngineInput>(); m_pMap = Kernel()->RequestInterface<IEngineMap>(); why ?
17:00
(cant they just be globals)
Avatar
polluting global space is "troll"
Avatar
yeah but polluting every class with.. this nonsense
17:03
is stupid
17:03
and makes my brain strain trying to get something from something else
17:04
its like alchemy
17:04
sprinkle some of that file into this interface which is ontop of this thing
17:04
etc etc
Avatar
it makes all classes reusable in any other context
17:05
they don't depend on globals
Avatar
yeah they depend on Kernal()
17:05
and the interface
17:05
s which it gets from it
Avatar
actually it just shadows definition of classes and (probably) makes compiling faster
17:06
second part maybe not true though
Avatar
yeah but cant you just... not do that
Avatar
is there any problem with kernel?
17:07
you can for example make N implementations of interfaces
Avatar
yeah my brain hurts im trying to get CGameClient.m_aClients
Avatar
and use one you need to
Avatar
also using virtual means more runtime code
Avatar
like mocking some parts
17:07
and testing others
17:07
etc etc
Avatar
and also seperating items in classes into more than 1 file kinda defeats seperation of concerns (and kiss)
Avatar
its good design wise, but not used properly since ddnet and tw went open source too early (imo)
Avatar
Avatar
Solly
and also seperating items in classes into more than 1 file kinda defeats seperation of concerns (and kiss)
its literally example of kiss :/
17:08
everything makes exactly 1 thing, at least was supposed to
Avatar
Kernal() acts like a global namespace
17:09
but it isnt
17:09
and interfaces just add another layer to add a definiton
Avatar
it adds a huge amount of flexability
17:09
its just not used in tw
17:10
and nailing everything to classes that can be reconsidered is bad imho
Avatar
i dont particularly understand. sure you can make another sound interface, then pass it into ?? what
17:10
and if you need to do something more, nothing sstopping you from changing the code
Avatar
and depending on runtime use one you need to
Avatar
Avatar
Solly
and if you need to do something more, nothing sstopping you from changing the code
ah yeah, good ol switch or if else if else if
Avatar
Avatar
zhn
and nailing everything to classes that can be reconsidered is bad imho
everything is in clases?
Avatar
Avatar
zhn
ah yeah, good ol switch or if else if else if
theres alot of that here
17:11
but no
17:11
using inheritence where its needed is fine
Avatar
if you want to refactor it the way you need to, go on
Avatar
way too big for me even to try
Avatar
i just can't get problem you are describing
Avatar
also cpp beginner lmao
17:12
im trying to get CGameClients().m_aClients (edited)
17:12
from
Avatar
then get it Clueless
Avatar
Avatar
Solly
im trying to get CGameClients().m_aClients (edited)
code link?
Avatar
Avatar
Solly
from
src/engine/client/client.cpp
Avatar
use github links next time troll
Avatar
i dont remember the prefix for showing files
17:14
DDraceNetwork, a free cooperative platformer game. Contribute to ddnet/ddnet development by creating an account on GitHub.
17:14
something like that
Avatar
i mean github link can bring you to exact lines, etc
17:14
nvm
Avatar
that is true
17:15
but this file is mostly CClient method implementations (edited)
17:15
so should apply for mostly anywhere inside one of the functions] (edited)
Avatar
well, lets say, you want to code client component
17:16
since you are using global space for everything, you can use literally everything, even server side globals
Avatar
Avatar
meloƞ
then get it Clueless
im trying my best
Avatar
you are not limited to do what you want, you can even call sound driver from server part
Avatar
Avatar
zhn
since you are using global space for everything, you can use literally everything, even server side globals
you just dont include the server globals
17:17
you have client/shared/server like it is rn
Avatar
making it wrapped like this limits you and abstracts you from everything else
Avatar
yeah but do you know how to get CGameClients().m_aClients
Avatar
you dont need to include and reinclude every part from definition to get this code running, only to request interface implementation pointer
Avatar
Avatar
Solly
yeah but do you know how to get CGameClients().m_aClients
i didn't see it in client.cpp, can you say what lines these are?
Avatar
its in src/game/gameclient.h (edited)
Avatar
so whats wrong? its data of all playing players on the server
Avatar
how do i get it
17:19
somewhere theres a CGameClients object with the data i want
Avatar
??, why kernel is problem there then?
Avatar
i dont know how to egt it
Avatar
its just undocumented, say tit straight
you_got_it_dude 1
17:19
it*
Avatar
good code doesnt need documentation
17:19
(most)
Avatar
Avatar
Solly
good code doesnt need documentation
good code != readable code
17:20
gerdoes code is good
Avatar
eee yeah
Avatar
its just horribly unreadable
Avatar
good readable code doesnt need docuemtnation* (edited)
Avatar
Avatar
Solly
good code doesnt need documentation
teeworlds is not the best example of code in first
Avatar
im aware
17:20
i dont really care about whether how tw does what it does is the best way to do what tw does
17:20
however
17:20
how do i get the thing i want ):
Avatar
and at second, it is a naming problem, what's problem with kernel?
Avatar
Avatar
Solly
how do i get the thing i want ):
just ask it there
Avatar
because its non obvious how i get the thing i want
17:21
i have been
Avatar
Avatar
Solly
yeah my brain hurts im trying to get CGameClient.m_aClients
.
17:21
my brain hurts more
Avatar
Avatar
Solly
.
from which context? where do you want it to get?
Avatar
from a method in CClient (edited)
Avatar
from CClient?
17:22
why do you need it there in first
Avatar
i want to reset prediction
17:22
on a message
17:22
to change the tick rate (edited)
17:22
otherwise it bugs out
Avatar
(or atleast im guessing prediction is messing it up)
17:23
(i was just gonna do it and see)
Avatar
so, whats bad in OnMessage from CGameClient?
17:23
you can get it there
Avatar
its bad that i cant figure it out
17:23
pretend im a python soy boy, and you have to tell me exactly what i write to get the thing i want (and youre chatgpt with a working knoledge of ddnet codebase) (edited)
justatest 1
Avatar
cclient is net/protocol wise, you don't really need if you are coding underneath game
17:24
its like patching engine to change flag color for example
Avatar
well i want to reset prediction when i get the NETMSG_TICK_RATE msg
Avatar
Avatar
Solly
well i want to reset prediction when i get the NETMSG_TICK_RATE msg
did you code it manually?
17:25
netmsg i mean
Avatar
well i added NETMSG_TICK_RATE yeah
Avatar
you need to change it protocol.py
17:25
or something like that, in datasrc
Avatar
but it works
17:25
but sure
17:26
else if(Conn == CONN_MAIN && (pPacket->m_Flags & NET_CHUNKFLAG_VITAL) != 0 && Msg == NETMSG_TICK_RATE) { int TickRate = Unpacker.GetInt(); m_pConsole->Print(IConsole::OUTPUT_LEVEL_STANDARD, "YIPEE", "got tickrate"); if(Unpacker.Error()) { return; } // this->GameClient().m_aClients // m_PredictedChar.Reset(); m_Predicted.Reset(); m_PrevPredicted.Reset(); g_Config.m_SvTickRate = TickRate; }
17:26
it does indeed say yipee when i change it on server thru rcon
17:27
anyway what should i do then if i shouldnt do it here
Avatar
you're recalculating prediction every time ?
Avatar
Avatar
meloƞ
you're recalculating prediction every time ?
prediction depends on the tickrate, when the tick rate changes the current prediction is invalid
Avatar
Avatar
Solly
anyway what should i do then if i shouldnt do it here
move it cgameclient's onmessage, i suppose
Avatar
and it bugs out for a time proportional to the change in tickrate
17:28
thus why i thought it was prediction
17:28
i might be completley wrong but this was supposed to just be a see if it works xd
Avatar
Avatar
Solly
prediction depends on the tickrate, when the tick rate changes the current prediction is invalid
why are you changing tickrate EssexLemonEat
Avatar
cuz i wana
Avatar
kekw fair enough
Avatar
you made me think of that russian game show player who is trapped in said gameshow
Avatar
Avatar
Solly
i might be completley wrong but this was supposed to just be a see if it works xd
you better ask @trml about prediction part (sry for ping xd)
Avatar
but still somehow doesnt hit anvil good enough to win picture of red car
17:29
due to budget cuts or something
Avatar
Avatar
zhn
you better ask @trml about prediction part (sry for ping xd)
well theres reset methods
17:29
so im gonna try those
Avatar
Republican vice presidential nominee says ‘Germans and other nations’ – not Russia – would ‘have to fund Ukraine’s reconstruction’
17:33
justatest
justatest 4
Avatar
whos this chap
Avatar
Avatar
Assa
@Robyt3 can you also take a look at my PR? I don't understand what the linter problem there is. This is formatted like anything else in this file
I'd guess it detects duplicate code
Avatar
Avatar
Solly
whos this chap
future vice president of america
17:58
he has 0 charisma tho
17:58
and looks like a dork xd
Avatar
he looks like not jewish ben shapiro
Avatar
GitHub BOT 2024-11-09 18:13
the FindMySQL.cmake file is completly broken if used with nix/NixOS and it's way of declaring packages and libraries within the /nix/store this has been tested on NixOS and Arch-linux on x86_64-linux. AFAIK this has been broken on windows before, so this would require someone to actually test this please.

Checklist

  • [x] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [x] Tested in combination with possibly related configuration options
  • [ ] Writte...
Avatar
Avatar
Solly
good readable code doesnt need docuemtnation* (edited)
i love docuemtnation
Avatar
it twas not prediction
Avatar
Avatar
Solly
pretend im a python soy boy, and you have to tell me exactly what i write to get the thing i want (and youre chatgpt with a working knoledge of ddnet codebase) (edited)
u should learn the basics of c++ if you haven't already
Avatar
also why the hate for python
Avatar
Avatar
Assa
also why the hate for python
python is a great language as long as i dont have to use it
18:32
cat_cracked_hehe
Avatar
ah, so the issue is you're skillchecked 😏
kek 1
Avatar
Avatar
Ryozuki
and looks like a dork xd
he has a very American face
18:44
he is the VP elect under Trump
Avatar
montikboom 2024-11-09 19:02
How to build Ddnet server.exe using sources from githubjustatest
Avatar
read readme
Avatar
i didnt fully rewrite the tutorial on how to build DDNet from source on windows for nothing montik!!!!
Avatar
how to download bot?
Avatar
Avatar
sannitt
how to download bot?
can i have your ingame name really quick please?
19:08
for academic purposes.
Avatar
ur gonna ban me?
19:08
its tallyboy06
Avatar
nah it's just when you get caught using a bot client now
19:09
i see this as a way to refer to your public messages
19:09
and shame you publicly
Avatar
so u marked my name or something?
Avatar
u'r always watched now
Avatar
nice
19:09
i dont play ddr anyway
Avatar
either way the bot clients can have viruses/miners and more while you think they are safe after they say "nah we dont have viruses"
Avatar
Avatar
louis
u should learn the basics of c++ if you haven't already
basics is just knowing how to program in any language with classes
Avatar
yea i wouldnt bot lol
❤️ 1
19:11
thats for losers
Avatar
Avatar
Solly
basics is just knowing how to program in any language with classes
knowing how to navigate a compleltey foreign codebase where everything is a class and if you drew a class diagram you would summon the spaghetti god... not really
Avatar
Avatar
sannitt
its tallyboy06
incredibly based
Avatar
Avatar
Ewan
incredibly based
thx 🤫
Avatar
MilkeeyCat 2024-11-09 19:13
Linux pros, is there a simple way to link a static library with a kernel module 😬 (edited)
Avatar
Avatar
Assa
also why the hate for python
i only hate python as much as the next guy. basically the only reason i dont like it right now is because how cython is implemented rather than the language itself also alot of people learn to code on python. and with the advent of ai which can breeze past any test ever written its fair to understand that ai soy boys and python have become linked
Avatar
Avatar
MilkeeyCat
Linux pros, is there a simple way to link a static library with a kernel module 😬 (edited)
static link library inside a kernal module
19:14
or other way around?
Avatar
I'm trying to link my kernel module with an external static lib, like this: obj-m += my_prog.o my_prog-objs := some/path/lib.a

all the standard targets...

For some reasone, the above Makefile d...
Avatar
Avatar
Solly
i only hate python as much as the next guy. basically the only reason i dont like it right now is because how cython is implemented rather than the language itself also alot of people learn to code on python. and with the advent of ai which can breeze past any test ever written its fair to understand that ai soy boys and python have become linked
?xd
Avatar
Avatar
Solly
knowing how to navigate a compleltey foreign codebase where everything is a class and if you drew a class diagram you would summon the spaghetti god... not really
navigating a foreign codebase is a challenge whether it's in python or cpp
19:28
you just gotta start small and piece it together
Avatar
Avatar
louis
you just gotta start small and piece it together
ive been rumaging around lkike a gremlin for a while
19:29
and i still cant find things without a hunt
19:29
but then again thats alot of things
Avatar
Avatar
ws-client
<ChillerDragon> do you need the csv file on the server or client side? For what? The server can already post round end stats to discord or as json to a custom http endpoint. csv and to file is planned but nobody had a real usecase for it yet.
Yeah the server side -- wow I had no idea about Discord part -- how can I learn about the details?
Avatar
Avatar
ws-client
<ChillerDragon> @Pathos i do not see replies i just assume you are talking to me. I think demo recording stops correctly with round end but i would also have to test it.
Yes sorry, Chiller I was messaging you -- unsure how I can tag you
20:12
But essentially, I imagine some server vote command to look like vote Start official match; restrict_clan_names; restart 15; record; record_statboard_csv; or something like that. Clan names are checked, so when disconnect happens, only clan member can substitute (not perfect solution, but still) but the clan part could be future scope (edited)
Avatar
Avatar
MilkeeyCat
Linux pros, is there a simple way to link a static library with a kernel module 😬 (edited)
MilkeeyCat 2024-11-09 20:52
Even if I try to add to compile just one file from library, it yeps about missing MODULE_LICENSE, I guess I will have to make a separate version of a library which will contain license in each file pepeW
Avatar
GitHub BOT 2024-11-09 21:24
Save/Load code are up to 65536 bytes long. However, Packer only has a buffer of 2048 bytes. Writing SAVE_SUCCESS and LOAD_SUCCESS chunks likely for saves with 3 or more tees. This increases the buffer size for all packing including networking packets and is therefore probably not the optimal solution. An alternative would be to create an additional packer CLargePacker or make the size a template argument. The suggested change is the simplest fix adding not much complexity, but increases...
Avatar
Avatar
Assa
@Robyt3 can you also take a look at my PR? I don't understand what the linter problem there is. This is formatted like anything else in this file
You can run scripts/fix_style.py or use Ctrl+K+D in Visual Studio to run clang format and fix this automatically. In this case, you have some spaces in addition to tabs on the lines after those that are referenced in the error messages.
Avatar
GitHub BOT 2024-11-09 22:08
6bed48a fix FindMySQL not finding mysql under NixOS - BlaiZephyr 1500ec8 Merge pull request #9225 from BlaiZephyr/findmysql - def-
👍 1
Avatar
Avatar
Robyt3
You can run scripts/fix_style.py or use Ctrl+K+D in Visual Studio to run clang format and fix this automatically. In this case, you have some spaces in addition to tabs on the lines after those that are referenced in the error messages.
that was a badly hidden space 🙈 thank you
Avatar
GitHub BOT 2024-11-09 22:50
1b6e5a9 Fix incomplete Teehistorian chunks being written - Zwelf 9589263 Merge pull request #9226 from Zwelf/pr-fix-saveload-teehistorian-chunk - def-
Exported 471 message(s)
Timezone: UTC+0