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 2021-01-26 00:00:00Z and 2021-01-27 00:00:00Z
Avatar
!ʎø1øʞıƝg 2021-01-26 00:38:24Z
@Learath2 U fool cloudflare dns is god only problem is teeworlds does not have hostnames
00:38
I saw noby did some rare shizzle with 2 servers ips on 1 server
Avatar
@!ʎø1øʞıƝg that does not help at all with the problem that we are facing: Cloudflare only offers servers inside of China to Enterprise customers, so our large player base in China is getting maps very slowly.
Avatar
[quakenet] ChillerDragon BOT 2021-01-26 09:05:49Z
@timakro there is grep -F for fixed strings but that does not help when you depend on line start. Looks like you have to switch to another tool like awk https://unix.stackexchange.com/a/282446
grep "^$1" sort of works, but how do I escape "$1" so grep doesn't interpret any characters in it specially? Or is there a better way? Edit: I don't want to search for '^$1' but for a dynamically
09:06
or a manual escaping with sed xd
09:07
yo bois how do i change the render mode in the client? seems like there is one to render in the world and one for the hud
09:14
seems like every component has its own MapscreenToGroup func like woot
09:20
ok got it somewhat working
09:25
Avatar
Delete it and redownload
Avatar
a tmp file existing doesn't allow client to redownload the map i seems
Avatar
It happens sometimes
Avatar
it seems*
09:26
i know
Avatar
I don't understand these permission problems. Why can't we overwrite a file we previously created ourselves?
Avatar
[quakenet] ChillerDragon BOT 2021-01-26 09:40:57Z
@deen maybe ddnet client was run as admin before idk i think some win users do that to boost speed or something
09:41
or does it happen during one client run?
Avatar
For me it never happened, just sometimes people report
Avatar
[quakenet] ChillerDragon BOT 2021-01-26 09:41:52Z
ye i can also not reproduce
Avatar
``` Program terminated with signal SIGSEGV, Segmentation fault. #0 CMapLayers::RenderTileLayer (this=this@entry=0x558ace777a80 , LayerIndex=8, pColor=0x7fffd6518bb0, pTileLayer=pTileLayer@entry=0x558ad0ae7dd4, pGroup=pGroup@entry=0x558ad0ae7974) at src/game/client/components/maplayers.cpp:999 999 if(Visuals.m_BufferContainerIndex == -1) [Current thread is 1 (Thread 0x7f778ff1eb40 (LWP 75207))] (gdb) bt #0 CMapLayers::RenderTileLayer(int, ColorRGBA, CMapItemLayerTilemap, ...
09:49
Can't reproduce unfortunately: `` Core was generated by ./DDNet -f mine.cfg'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x00007fd439b37b1e in memmove_avx_unaligned_erms () from /usr/lib/libc.so.6 [Current thread is 1 (Thread 0x7fd4344bdb40 (LWP 220066))] (gdb) bt #0 0x00007fd439b37b1e in memmove_avx_unaligned_erms () at /usr/lib/libc.so.6 #1 0x0000561d5224931f in CNetBase::UnpackPacket(unsigned char, int, CNetPacketConstruct, bool&, int, int) (pB...
Avatar
The map error sometimes go away after restart the game. Sometimes it is persistent. It is weird
Avatar
Then we could make the CHN servers download maps from chn1.ddnet.tw instead of maps.ddnet.tw (which is not in mainland china because we don't have cloudflare enterprise)
Avatar
Happend one time when starting a recording with the attached file, couldn't reproduce. unfinished_dummy_map.demo.zip `` Core was generated by ./DDNet -f mine.cfg'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x000055e64d4e2c24 in CVideo::NextVideoFrameThread (this=0x55e64f0ac2b0) at src/engine/client/video.cpp:225 225 m_VideoStream.pFrame->pts = (int64)m_VideoStream.pEnc->frame_numbe...
Avatar
@TsFreddie it might depend on antivirus software being used. maybe it interferes and somehow locks the files
Avatar
607dcf9 add discord rich presence - edg-l 50a7f57 Put the Discord stuff into its own file - heinrich5991 8659873 Version 15.3 - def-
11:47
[ddnet/ddnet] New branch created: 15.3-devel
Avatar
Banned
Avatar
@deen > So how can I build this? Do I need to get the discord libs from somewhere? Or just set DISCORD enabled in cmake for the official builds? isnt there a pr on ddnet libs
11:51
954e86c add discord - edg-l ae1277e Merge pull request #16 from edg-l/master - def-
Avatar
DDNet 15.3 will be another big release and is supposed to release in 1 week, assuming no bad bugs are found. Please test Release Candidate 1 to prevent problems being only discovered after release. Report bugs in the #bugs channel or directly on Github: Windows 32bit: https://ddnet.tw/downloads/DDNet-15.3-rc1-win32.zip Windows 64bit: https://ddnet.tw/downloads/DDNet-15.3-rc1-win64.zip Linux x86: https://ddnet.tw/downloads/DDNet-15.3-rc1-linux_x86.tar.xz Linux x86_64: htt...
Avatar
have we had a not-big release in less than six months? 😄
Avatar
Development activity is quite large 😄
Avatar
[quakenet] ChillerDragon BOT 2021-01-26 12:24:05Z
what can i do automatically fix clang-format with the same style guide github action uses?
12:24
my local one formats tenerays on multiple lines and github actions does not accept it so i have to manually format
Avatar
You'd need clang-format 10. I do it manually when it doesn't fit at the moment :/
Avatar
[quakenet] ChillerDragon BOT 2021-01-26 12:36:23Z
hm k
12:36
the new one looks even worse than the current one
Avatar
@deen why it doesnt build?
Avatar
!ʎø1øʞıƝg 2021-01-26 13:04:57Z
Hm
13:05
Why not let players download locally
Avatar
!ʎø1øʞıƝg 2021-01-26 13:17:15Z
@deen can we get more master servers? 🤡
Avatar
So you don't see players teleporting while you do nothing.
Avatar
This reverts commit 28cf3b31bab7df4c94e9e7d8e53973dd62de7e5a.

Checklist

  • [ ] Tested the change ingame
  • [ ] Provided screenshots if it is a visual change
  • [ ] Tested in combination with possibly related configuration options
  • [ ] Written a unit test if it works standalone, system.c especially
  • [ ] Considered possible null pointers and out of bounds array indexing
  • [ ] Changed no physics that affect existing maps
  • [ ] Tested the change with [ASan+UBSan or valgrind's me...
Avatar
@deen don't forget about translations
Avatar
@gerdoe did you see the failing rescue on freeze/dfreeze?
Avatar
on build checks or what?
Avatar
Fixed all the merges and clang-format (hopefully) Checklist Tested the change ingame Provided screenshots if it is a visual change Tested in combination with possibly related configuration opti...
14:09
aaah, hammer unfreezes you
14:09
pretty obvious actually 😄
Avatar
@heinrich5991 even saw that coming but you said you tested it 😛
14:10
one-tick unfreezes
Avatar
❤️
Avatar
okey, i guess it just should have !m_FreezeTime condition too
14:12
with old ones
Avatar
@deen laser too
Avatar
what would that help?
14:13
you're unfrozen for a tick when you're being hammered
Avatar
with old ones
IsGrounded() && tile != TILE_FREEZE && tile != TILE_DFREEZE && ftile != TILE_FREEZE && ftile != TILE_DFREEZE && !m_DeepFreeze
14:15
it solves heart problem and hammer unfreezes in freeze
Avatar
I see
Avatar
or should it just check heart position... meh
Avatar
except if you get hammered inside a heart 😄
14:16
or should it just check heart position... meh
so this
Avatar
or record whether you were frozen the last tick
14:17
and only if you're not frozen this tick and the last tick, save /r
Avatar
then we can delete old tiles check, hm?
Avatar
idk, I'm just hoping 😄
Avatar
no, seems we shouldn't call it one-tick unfreeze xd
Avatar
@Learath2 poggers i kinda fixed the token stuff
Avatar
nice 🙂
Avatar
@heinrich5991 i dont like it tho, the way it works for me is first making it a str and then parsing, i would prefer to read directly the integer tho
14:48
14:48
the commented code is how i rly want it
Avatar
m_FreezeTick works strange
🇳 1
🇻 1
🇲 1
Avatar
but it simply doesnt match
Avatar
well, the number is in a string, no?
14:49
it makes sense that you need to call a parse() function
Avatar
i guess
14:49
all the implementations i seen parse strings
Avatar
well, it IS a string that is sent over the network
Avatar
like "1234\0"
14:50
i got confused i guess
14:50
xdd
14:56
The int type is an integer encoded in the decimal system in a zero-terminated ASCII string.
14:56
it says it here but my brain said no
14:56
feelsbadman
Avatar
oh, also for your other question from the other day:
The receiver of such a server info can detect whether it has received the server info completely by comparing the number of players received with the number of players set in the main packet.
Avatar
number of players
14:58
what does represent number of clients btw?
Avatar
ah, that's probably wrong, should be number of clients* in both cases
14:58
players = non-spectator client
Avatar
i se num of clients in my code rn
Avatar
+1
15:00
@heinrich5991 is it reasonable to expect to only need 1 "more" packet in the foreseeable future?
Avatar
I get a maximum of 2624 bytes for the player info alone, maximum packet size is 1400, so I wouldn't bet on two packets being enough even today
15:02
(12+16+4+6+2+1)*64 = 2624
Avatar
@heinrich5991 nice solution!
15:03
it works better now
Avatar
@gerdoe the "now and last tick" variant?
Avatar
yeah, Chr has LastFrozenTick boolean
15:04
but corner problem is still here
Avatar
corner?
Avatar
if you will go into freeze from corner your save position will be in freeze
15:05
known thing?
Avatar
maybe you need to make that freeze check at a different place
15:06
after you evaluated whether you should be frozen at this place
Avatar
@heinrich5991 you mentioned you used unsafe code in libtw2, did you really need it or is it for perfomance reason? or more easy to do?
15:11
curious
Avatar
you could get around it by allocating
16:02
but I don't want to allocate
16:02
so I guess you could say it's for performance
Avatar
ddnet suggestionddnet putting special /team for top 5 or number 1 inside server
Avatar
@hussainx3 what is your sugestion you want a Command to show team ranks ?
Avatar
!ʎø1øʞıƝg 2021-01-26 17:40:45Z
Found a bug
17:40
On speedup
Avatar
speedup is a bug itself
17:42
the bug u found is probs used
Avatar
!ʎø1øʞıƝg 2021-01-26 17:42:03Z
xD
Avatar
on maps
Avatar
!ʎø1øʞıƝg 2021-01-26 17:42:14Z
All maps
17:42
i meant in speedups u can litterally stop moving if u move the other way
17:42
its used in maps
17:42
there is crazier stuff
Avatar
!ʎø1øʞıƝg 2021-01-26 17:42:51Z
No No "Speedup" tile
Avatar
u can hold momentum
Avatar
!ʎø1øʞıƝg 2021-01-26 17:43:00Z
tiles
17:43
Wtf
17:43
xD do u understand me
17:43
i don't mean a map
17:43
the tile
Avatar
ye the tile
Avatar
!ʎø1øʞıƝg 2021-01-26 17:43:22Z
Yes
Avatar
if u move along the speedup tile direction u will stop
Avatar
!ʎø1øʞıƝg 2021-01-26 17:43:43Z
why
Avatar
physics
17:43
and its used in maps
17:43
to do parts
17:44
@Im 'corneum maybe u remember a map
17:44
ur the magician
17:44
mapgician
Avatar
!ʎø1øʞıƝg 2021-01-26 17:45:10Z
Nah
Avatar
@!ʎø1øʞıƝg u high again?
Avatar
!ʎø1øʞıƝg 2021-01-26 17:45:27Z
Yes
Avatar
!ʎø1øʞıƝg 2021-01-26 17:45:50Z
🤡 @m!ki i did not know u are in ddnet discord
Avatar
Avatar
!ʎø1øʞıƝg
🤡 @m!ki i did not know u are in ddnet discord
lol im in since 2010
troll 1
Avatar
!ʎø1øʞıƝg 2021-01-26 17:46:31Z
Damn
Avatar
you can even hold the same way and you stop moving
17:47
first part of the map is speeder bug
Avatar
!ʎø1øʞıƝg 2021-01-26 17:49:18Z
lol
17:49
u guys know too much
Avatar
Avatar
Ama
you can even hold the same way and you stop moving
isnt that what i said xd
Avatar
Avatar
Ama
@hussainx3 what is your sugestion you want a Command to show team ranks ?
example /team 1 nobody can go inside Except top 5 and put colors rainbow for the team
18:18
fun Feature for best one in server or top5 in map (edited)
Avatar
just change name to whoever is r1 lol
Avatar
i mean we are not fortnite or we would have paid skins and rainbow by now
Avatar
i not sure what you mean but why not? we need something To encourage players to get points or get good rank
Avatar
data.tw domain would have been epic for the project i want to do
18:53
rip its taken
18:54
anyone has any domain name idea
18:54
related to data and teeworlds/ddnet
18:54
hm data seems to be an expensive name to have in ur domain xd
Avatar
not good feelsbadman
19:01
teedata.tw monkaS
19:02
finding good domains is always hard
19:03
so funny
19:09
An implementation and definition of the Rust trait system using a PROLOG-like logic solver - rust-lang/chalk
19:09
PROLOG is everywhere
19:09
monkalaugh
Avatar
Avatar
heinrich5991
well, it IS a string that is sent over the network
Nooo the token is just an int
19:22
3 bytes sent in big endian order
19:23
Other ints within the serverinfo message are indeed strings though
Avatar
not sure
Avatar
@Learath2 I think you mix up receiving and sending
Avatar
Either side there is no string parsing, encoding involved
19:26
ADD_INT adds an int encoded as a ASCII string
Avatar
We generate a 3byte token. In big endian order its bytes go into extra_token0 extra_token1 and token
Avatar
yes, that's the serverinfo request
19:27
in the response, the token is encoded as an ASCII string that contains a decimal integer
Avatar
Ah the response
Avatar
in rust i generate a u16 and a u8 and send it
19:27
and receive this decimal string
19:27
xd
Avatar
That makes more sense, thought I was going insane there for a sec
Avatar
@Ryozuki make sure you pack it correctly wrt endianness
19:28
😉
19:28
hmmmm
Avatar
He doesnt need to pack responses does he?
Avatar
but requests
19:29
19:29
apparently that is big endian order
Avatar
Yeah, and I think in that we only pack the token big endian
Avatar
network uses big endian right?
Avatar
I'd have preferred it to be in the method name
Avatar
i mean the standard is using bend
Avatar
most network protocols use big endian, yes
Avatar
API documentation for the Rust byteorder crate.
19:30
with this u can explicitly do it
Avatar
Avatar
heinrich5991
most network protocols use big endian, yes
I wonder how this came to be with most cpus being little endian when the protocols were being invented
19:31
An unnecessary cycle waste during a time when cycles were actually a premium
Avatar
one point is that in a little-endian system, the address of a given value in memory, taken as a 32, 16, or 8 bit width, is the same.
19:32
👀
19:33
So, in short, ‘on little endian systems, casts are a no-op.’
19:33
is this not true on big endian?
19:33
Intel processors (and maybe some others) use the little endian format for storage. I always wonder why someone would want to store the bytes in reverse order. Does this format have any advantages...
Avatar
Huh, I thought it was
19:34
Not like you address the ends of values in big endian
Avatar
its also for addition and substraction
Avatar
doesnt the standard library also support the byteorder functionality?
19:35
ah
19:35
Note that as of Rust 1.32, the standard numeric types provide built-in methods like to_le_bytes and from_le_bytes, which support some of the same use cases.
Avatar
Ah I see what they meant about the casts
19:38
The way we define casts is why this happens
19:38
When we cast down we want to discard the most significant bytes
Avatar
@Ryozuki but addition and subtraction happen in registers, mostly?
20:04
registers don't have byte order
20:04
https://github.com/ddnet/ddnet/pull/3492#issuecomment-767790313 did you mean that we send both messages to old clients?
This continues what #3439 started, and also replaces non-extended messages that are DDRace extensions with extended messages. The DDNet server still sends the old message to old clients and the DDN...
20:04
@Learath2 ^
Avatar
I wanted to give everyone the opportunity to implement the new protocol
20:05
also helps for demos etc.
Avatar
Shouldn't they need to bump up the version?
Avatar
hm. I think I like it more if you can get all the information, see also the demo
20:07
the demo saves the new information which makes it easier to write demo parsers if you only care about the new protocol
20:08
(note that this wasn't laziness, I could have put the sendmessage in the else branch with no extra effort)
Avatar
All the information includes redundant information was my main concern
20:08
But I guess these aren't messages sent all the time, a little redundancy shouldn't matter here
20:09
Wait a demo saved by an old client wouldnt save the new extended message it doesnt recognize, would it?
Avatar
I think it saves all messages
20:09
all game messages
20:09
let me check
20:10
ye, saves all game messages, before decoding them
Avatar
new protocol?
20:14
poggers
Avatar
no, just a couple of messages converted from non-ex messages to ex messages
20:15
Sv_DDRaceTime#m_Time
20:15
will this allow a nanosecond resolution timer?
Avatar
sir? 😛
Avatar
i mean
20:16
ddnet time is in 00.00
20:16
why not nanoseconds
Avatar
ah
20:16
well, we only tick 50 times per second, so every 0.02 seconds
20:16
we could potentially add random numbers beyond that, by trying to interpolate when exactly you hit the start line/finish line
20:16
I think race does that
20:17
trackmania has more resolution
20:17
and i dont think it runs at a crazy tickrate
Avatar
only 0.01 I think?
20:17
tmnf at least
Avatar
i guess ye
Avatar
Haha its funny because this website doesnt use cookies YEP (edited)
Exported 279 message(s)