Guild icon
DDraceNetwork
Development / developer
Development discussion. Logged to https://ddnet.tw/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 2020-08-31 00:00:00Z and 2020-09-01 00:00:00Z
Avatar
Not sure if this is right place to talk about this, but I just found out that 0.7 has 1 frame delay -- this means that on top of needing antiping, it needs anti-frame-delay
00:08
So let's say someone like Cammo, who plays with 8 ping, plays on a 60Hz monitor -- that's at minimum ~300% delay
00:09
So everybody plays worse and have no idea why
00:10
Not to mention significantly lower FPS (though I don't think most people would be affected by this) (edited)
Avatar
ᶰ°Konͧsti 2020-08-31 00:12:31Z
0.7 kek
Avatar
0.6 > 0.7
Avatar
@Pathos try gfx_finish 0 and gfx_vsync 0, then 0.7 should be as good as ddnet old renderer
Avatar
jao's hairy kebab 2020-08-31 05:10:33Z
is there a size limit for audio files
Avatar
@Pathos try gfx_finish 0 and gfx_vsync 0, then 0.7 should be as good as ddnet old renderer
@Deleted User Already have those settings
05:26
Thanks for looking out though
Avatar
@Pathos what graphics card are you using? 0.7 has the async rendering turned off by default. You could try gfx_asyncrender 1. Might help but it can also make it worse =\ For me both ddnet and 0.7 feel good in terms of latency
Avatar
5347611 Add ZiKkie live stream to #51 - def-
Avatar
Why are there no odd numbers on ranks?
Avatar
1000 / 50 = 20
08:24
so 20ms per tw tick
Avatar
ᶰ°Konͧsti 2020-08-31 08:37:37Z
can we have a command /teamranks [name] [times x] ?
08:38
it should list all teamranks from a player on this map
f3 5
10:19
a3958b0 Upgrade SDL2 for Linux Steam release to 2.0.12 (fixes ddnet#2679) - def- d3ea375 Merge pull request #11 from ddnet/pr-sdl-linux-steam - def-
10:24
2b0e13d Add platform and arch in console output - def- c864677 Merge #2683 - bors[bot]
10:31
This allows building without rpath modifying on Linux which seems to be needed for openSUSE packaging. Fixes #2669.
10:34
3de4bc5 Upgrade SDL2 for Linux Steam release to 2.0.12 (fixes #2679) - def- 44b1014 Load serverbrowser more fairly - def- 2795082 Merge #2678 #2681 - bors[bot]
10:39
Reported by becc on Discord, can't reproduce on Linux:
When you open console and click any mouse button, the click will happen in background on the teeworlds-game-cursor, so you could accidentally join a server or something
Avatar
Some ideas:
  • Do we still need an autoupdater or is the Steam one good enough?
  • Should we reimplement the autoupdater as a separate executable launching DDNet?
  • Could we auto-create the update json file based on diffing two directories?
  • Could we show permission problems more clearly in the UI?
10:58
@Jupeyy is it supposed to show for graphics on official maps? Should we go through them and fix all? !screenshot-20200831@125808
Avatar
@deen how do you add the translation texts, have a script for it? we should add an option to disable graphic warnings in the graphic settings tab and maybe https://github.com/ddnet/ddnet/issues/2676 remove these instead
seems like ppl are really clicking it: Also they probs not worth it too much. We can still leave them as config. And smth else: maybe for rescaling we should now use the resize function its cubic a...
11:20
ffa9550 Add localization for texture warning, improve wording (fixes #2688) - def- 3bbf657 Merge #2689 - bors[bot]
11:25
11:31
32734ac Make steam_api dependency static on Linux non-Steam builds - heinrich5991 7a4284c Merge #2684 - bors[bot]
Avatar
@deen yes, build with -DSTEAM=ON for the steam releases (for windows/macOS it doesn't matter right now, but it doesn't hurt either)
11:47
9dc6a1c Remove Quality Textures & Texture Compression from graphics menu (fixes #2676) - def- c05e22d Merge #2690 - bors[bot]
Avatar
what this sign mean?
13:58
seems like background texture was not initialized or something
13:59
reproduced in 100% with old OpenGL
Avatar
yeah i think i looked that up some day it was blob.png or some debug texture
14:00
cant remember rn
Avatar
correct (its blob.png) (edited)
Avatar
i think blob without blending
14:01
if i remember correctly, i just enabled glblend default in 3.3
14:01
that's maybe why its not there
Avatar
should I open an issue for this?
14:02
this thing here for a looong time
Avatar
i dunno if its fixable, dont have a profiler that works with < gl 3.2
14:02
but i can try later
14:05
m_State.m_BlendMode = CCommandBuffer::BLEND_ALPHA;
14:05
can you try that @BannZay in graphics_threaded.cpp
14:05
sadly i barely see the loading screen
Avatar
your compucter is too fast
Avatar
or i have to take screenshots automtically to test 😄
Avatar
yes I will try
14:06
I used obsstudio to catch it
Avatar
ah ok 😄
14:07
in the constructor btw
Avatar
you are genius my friend 🙂
14:08
it helped
Avatar
ok nice, you can create the pr if u want 😄
Avatar
I propose a feature that is similar to a countdown timer, where after you hit the initial 'start entity', you have X amount of seconds to get to the 'end entity'. If you do not get to the end entity within X seconds, you either die, or you are teleported to the beginning (as specified by the editor.)
Avatar
@Pathos what graphics card are you using? 0.7 has the async rendering turned off by default. You could try gfx_asyncrender 1. Might help but it can also make it worse =\ For me both ddnet and 0.7 feel good in terms of latency
@redix I will try this, thanks
Avatar
@Learath2 do u know why would u use a single element tuple (x,) instead of just x (in langs that support them)
15:11
👀
Avatar
hm, maybe to keep an API consistent?
15:12
@Learath2 apparently haskell doesnt have them
15:12
they consider them useless
Avatar
single element tuples?
15:13
does indeed sound like an oxymoron to me
Avatar
C++ Library Manager for Windows, Linux, and MacOS. Contribute to microsoft/vcpkg development by creating an account on GitHub.
15:19
what do u think about this?
15:19
it has cmake support
Avatar
[quakenet] Learath2 BOT 2020-08-31 15:21:27Z
hadn't seen it before
15:21
very skeptical, there have been attempts at a c/c++ package manager before, there is a reason none stuck on
Avatar
10k stars
15:22
xd
Avatar
[quakenet] Learath2 BOT 2020-08-31 15:22:27Z
is it a popularity contest?
15:25
@Learath2 well, i think it is more good for windows than linux
15:25
since distros have their own package managers
15:25
but windows not
Avatar
[quakenet] Learath2 BOT 2020-08-31 15:26:40Z
one issue I see is that it uses the cmake toolchain file, many projects use that for setting up cross compilation instead (including ddnet)
15:27
Even in linux c/c++ library management is quite awful
Avatar
[quakenet] Learath2 BOT 2020-08-31 15:27:43Z
No good way to pin versions being the major issue imho
Avatar
i got it
18:45
my dummy couldn't connect because dummy didn't have name
18:45
it just was empty (edited)
Avatar
also, i could enter to other mods (edited)
18:46
with dummy
Avatar
is this can be releated with steam name update?
yes 1
Avatar
can we have a visual clue in the leaderboard when a team is in practice mode?
Avatar
@Im 'corneum I was going to add this, but it requires a rather tough patch to replace netobjects in snapshots
Avatar
i dont know what that means but i hope you get it working
Avatar
It requires a motivation boost and some extra time 😄
Avatar
@Learath2 i believe in you!!!❤️
19:19
... now you only need some extra time
Avatar
send time
19:39
Avatar
How is it performing with that many people around?
Avatar
i had 128 players at once already :D
19:44
for some minutes, 2 days ago
19:44
works quite good
19:44
also regarding the 0.7 side of the server, seems to work good after i updated the algorithm
19:48
@Learath2 when i tried to send more than 64 players in the client count, like 1-2 years ago it wasnt possible, only the max clients, now it also works for the num clients
Avatar
9375b29 Set blend mode on background render - BannZay 4afec9e Merge #2692 - bors[bot]
Avatar
@fokkonaut btw, why not add 128 players to official DDNet? Did we have that discussion already?
Avatar
8192 characters when
Avatar
in theory its not hard @deen, you have the algorithm already basically, for me it was only hard because i have to handle 0.7, which uses net msgs, not snapshots
Avatar
well, we also support 0.7
Avatar
ah, true, lol
19:58
also, i have no client-support
19:58
its all based on the id-maps
19:58
just like ddnets 64 player version in 0.6
20:00
If you are interested, I could add it, my algorithm isnt perfect tho and I do think that it can cause micro laggs, but I think your servers are better anyways
20:01
I wrote my own UpdatePlayerMaps algorithm, to handle some things slightly easier and to have it a bit more improved (i hope, never actually checked, but by feeling its better :D)
Avatar
Personally I think it's interesting, not sure if @Learath2 and @heinrich5991 agree
Avatar
@deen i needed to improve stuff, such as all players from one ip having the same faked ids among them, to make sure hammerfly and stuff with dummy works fine
20:14
The initial commit bascially has everything already but ofc i fixed some smaller bugs with time
Avatar
@Learath2 any tips/ideas on finding protocol bugs which leads to 0.7 client freeze? First one I've found was CNetObjPickup which had different size on 0.6 and 0.7
20:54
20:54
I've fixed it like this and it worked like a charm
20:55
But it was easy to fix because I knew the pickup will appear and what is causing it to appear.
20:55
Now I have some different network protocol packet which only being sent after a warmup end and it hangs 0.7 client only.
20:56
And I don't know what it could be.
Avatar
Hm lemme think
Avatar
Client freezes or hangs due to invalid snapshot?
Avatar
Seems like that
Avatar
can you open menus like settings, f1?
20:57
If yes, its invalid snaos
20:57
snaps*
Avatar
yes, that's not client itself freezes
20:57
then make sure to use correct Sizes
20:57
for all snap objects
Avatar
it just seems fail to parse correctly snapshots
Avatar
I forgot to adjust one size, then the snap was invalu
20:58
invalid*
Avatar
but client doesdn't disconnects so it at least thinks it doing something useful and sends packets to a server
Avatar
Yea, its exactly that
20:58
Fix all sizes
Avatar
Any thoughts on how to get info from client itself?
20:59
maybe add some debug line somewhere
Avatar
Just check all your snaps in the server
20:59
I forgot this one, after I fixed it it worked.
20:59
Check all snaps you send
Avatar
first one was HEARTH pickup yeah
21:00
but now I have only 2 clients in snapshots and idk what could be wrong
21:00
tbh I don't know what is in snapshots ofc
Avatar
it just game don't have anything besides 2 characters
21:00
and a map ofc
Avatar
Okay, do you have any own custom snap Objects?
Avatar
plenty of them
Avatar
Then fix all of them
21:01
The sizes need to be correct
Avatar
but they're not spawn at the start of a game
21:01
no custom object is in game
Avatar
Do you have a github?
Avatar
yes but the project is closed source for some period
21:02
at least while there is a threat of clone servers (edited)
21:02
I don't want players to split on servers
21:02
so no
21:02
it is something related to characters I think
Avatar
Its exactly what I said :)
Avatar
The netobj translation is just not there :/
Avatar
any tips on what could be added to client itself to raise exception on invalid snapshot state?
Avatar
turn on debug mode and check console
21:05
it should say failed delta unpacking
21:05
with information on what object
Avatar
hm... I could build a client with debug on... right
21:05
just f1: debug 1
21:05
then check console window
21:05
it doesnt get printed to f1, just to the console window
Avatar
wow thanks
21:07
so much info
21:07
and hud is really nice
21:08
it prints some net packets errors which is awesome
21:08
[2020-09-01 00:07:11][game]: invalidated index=7 type=-1 ((out of range)) size=8 id=0 [2020-09-01 00:07:11][game]: invalidated index=8 type=-1 ((out of range)) size=8 id=0 [2020-09-01 00:07:11][game]: invalidated index=9 type=-1 ((out of range)) size=20 id=0
21:08
console is full of this
21:08
and a [2020-09-01 00:08:31][client]: prediction time reset! [2020-09-01 00:08:32][client]: prediction time reset! [2020-09-01 00:08:33][client]: prediction time reset! [2020-09-01 00:08:34][client]: prediction time reset!
21:09
I think this is something I can work with
Avatar
Why dont you listen? :/
21:12
It is the snap sizes, because they differ in 0.6 and 0.7
21:12
You have to send the correct objects to the specific clients
Avatar
Might be related to websockets update, I'm on Arch Linux using libwebsockets 4.0.20-3 Using https://teewebs.net/, compiled server with -DWEBSOCKETS=ON, getting this on the server: ``` [2020-08-31 23:12:02][websockets]: connection established with 0.0.0.0:55272 , assigned fake port 2 [2020-08-31 23:12:02][websockets]: connection with fake port 2 closed [2020-08-31 23:12:03][websockets]: connection established with 0.0.0.0:55274 , assigned fake port 6 [2020-08-31 23:12:03][websockets]...
Avatar
I add a dbg_break to delta unpacking failed while testing the bridge
21:14
I also add a dbg_msg printing out every object in the snap in delta unpack and one in snap new item
Avatar
Why dont you listen? :/ It is the snap sizes, because they differ in 0.6 and 0.7 You have to send the correct objects to the specific clients
I've listened, still want to know which exact packets are wrong. And this debug info helps me to find.
21:14
I don't have the whole project and type sizes in my brain @fokkonaut far from that
Avatar
me neither, but you can use sizeof
21:15
because ddnet has both protocols
Avatar
I probably still should add a script to check netobj differences between the protocols and only auto translate if they are the exact same
Avatar
To use sizeof I should know what to examine, don't you think?
Avatar
@Deleted User what's the issue here?
21:16
You are sending an invalid object thats breaking the client?
Avatar
I am sure "I" do.
Avatar
Invalidated index is normal, its the extended protocol objects which get dropped by vanilla
Avatar
ok
21:18
but network errors in hud is a useful sign?
Avatar
The better way to diagnose this is to first determine how it hangs
Avatar
they're not many but they are there
Avatar
Maybe something like ws:127.0.0.1:8303 Maybe try websockets when udp connection doesn't work.
Avatar
hm....
21:18
The better way to diagnose this is to first determine how it hangs
sure, just I don't know how it is happening
(edited)
Avatar
What kind of hang is it, can you just disconnect and reconnect
21:20
?
Avatar
My steps to reproduce are: 1. Start a server 2. Connect with F-Client to the game 3. Connect a dummy 4. game entering a warmup stage 5. vote to change map 6. map changed 7. I am on new map w/o dummy 8. I click on connect dummy 9. All 2 chararacters are stopped reacting 10. If I connect with DDNet client to this game it looks fine for 0.6 client (edited)
Avatar
At the moment we collide with Teeworlds. If Teeworlds has a default in the config set and you ran it before then the first time running DDNet will not show you the welcome screen and also keep the Teeworlds defaults instead of ours. I guess this should be changed by now. Something like ~/.ddnet instead of ~/.teeworlds
Avatar
Oooh f client, i wouldnt know, it could be an fclient issue too
21:21
Should ask fokkonaut
Avatar
Lol
21:23
vanilla 0.7.5 is handing before drawing a map 😄
21:23
even w/o other characters
21:23
so F-Client does it better
21:23
though the problem is there
Avatar
@Learath2 its the snap sizes...
Avatar
But that's nice. At least a bug that fails very early
Avatar
its not a big bug, really
Avatar
Snap sizes doesnt make sense, do you mean netobj sizes?
21:25
Just check all your Snap items and make sure to send the Protocol7 version to IsSixup clients and the normal version to non sixup
Avatar
ok
21:26
Maybe this will be easier.
21:26
Do inspect evevry invocation of NetObjAnything in code
21:26
Ok, thanks. I've got more than I've expected to unstuck myself in investigating this.
21:27
@Learath2 you can use sizeof(protocol7::CNetObj_Pickup) here
21:27
and at all the other places where its hardcoded by timakro
Avatar
Ah I knew I forgot some
Avatar
basically also the hardcoded Types @Learath2
21:29
2, 3, etc
21:29
protocol7::PICKUP_x
Avatar
So it's 12 bytes for 0.7 protocol and variable sized for 0.6?
21:29
for pickups I mean
Avatar
depends on what object
21:30
Use sizeof
👌 1
21:30
it automatically does that
Avatar
I will try that Thanks
21:30
Good night
Avatar
4bef000 Update norwegian translation - trml d87add5 Merge #2699 - bors[bot]
Avatar
What is the @DDNet bot programmed in
Avatar
Contribute to 12pm/ddnet-discordbot development by creating an account on GitHub.
Avatar
oh epic
22:08
python???? [superiority complex engaged] umm why not use C??? 🙄 (edited)
22:10
JK i dont care what programming languages poeple use
Exported 273 message(s)