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-01-23 00:00:00Z and 2020-01-24 00:00:00Z
06:02
8a38e97 Add kill protection - ChillerDragon 2309cc0 Merge pull request #60 from ChillerDragon/pr_add_killprot - fokkonaut
06:31
5ff36b1 Do not package client for macOS - ChillerDragon 73a324b Merge pull request #61 from ChillerDragon/pr_github_actions_mac - def-
Avatar
`` Core was generated by ./DDNet7-Server -f servers/9304.cfg'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x000055d5377fd8f2 in CProjectile::CProjectile (this=0x55d538fb2950, pGameWorld=, Type=2, Owner=-1, Pos=..., Dir=..., Span=-2, Freeze=, Explosive=false, Force=0, SoundImpact=6, Layer=0, Number=0) at /home/teeworlds/src7/master/src/game/server/gameworld.h:42 42 class CGameContext *GameServer() { return m_pGameServer; } [Current thread is 1 (Thread 0...
08:05
I updated the servers 3 days ago. No more log files are written since then. even though "logfile servers/9303.log" is set.
Avatar
ChillerDragon 2020-01-23 12:34:09Z
@deen did you create the directory ~/.teeworlds/dumps/servers ? Idk maybe it was still 0.6 log system before fokko merged with vanilla and now it’s 0.7 style starting from dumps dir
Avatar
I just merged the last few weeks
Avatar
ChillerDragon 2020-01-23 12:54:11Z
Hmm
12:55
I noticed complains about missing name change feature should we reimplement that for ddnet7?
12:55
So at least ddnet clients can change names
12:56
Im sure gamer would also adapt
Avatar
ChillerDragon 2020-01-23 13:08:14Z
oh and @deen could you please turn off circleci and appveyor so we can get our green checkmark back πŸ™‚ both are replaced by github actions now
Avatar
@ChillerDragon Yes, name change would be cool, also thought about that with the ddnet client.
Avatar
ChillerDragon 2020-01-23 14:02:15Z
the logging system changed for sure
14:02
i just tested it
14:02
or well not sure if it changed but currently it is 0.7 style
Avatar
58347e8 Fix typo - fokkonaut a3096b8 Merge branch 'master' of https://github.com/ddnet/ddnet7 - fokkonaut
14:19
41c6d97 Dont allow killing while spectating - fokkonaut
Avatar
@deen Could you deactivate the CI services, please? GitHub Actions does the work now.
14:30
(in DDNet7)
Avatar
f8e54e7 Remove unused stuff from the vanilla merge - fokkonaut
Avatar
@noby nothing happened there yet 😦
Avatar
What do you mean deactivate the services
14:39
You mean remove the webhooks?
14:42
they fail the builds cause their files got removed already
Avatar
Ok, removed them
14:45
Where are we building now?
Avatar
GitHub Actions, as I said
Avatar
Does github host the vms?
Avatar
ChillerDragon 2020-01-23 14:47:16Z
@Learath2 and provide compiled/packaged binarys as public download
Avatar
@Learath2 just check the build now, on this commit
Avatar
ChillerDragon 2020-01-23 14:47:42Z
i could not reproduce the logging issue
14:47
not before and not after the merge
14:47
the second merge
Avatar
any reason you didn't upgrade the 0.6 repository aswell?
Avatar
7a949f9 properly force spawn order of teams - fokkonaut
Avatar
ChillerDragon 2020-01-23 14:54:38Z
@Learath2 did not find the time yet i prioritize things that support 0.7 obviously
Avatar
obviously, who cares about the stable version of ddnet we are supposed to be maintaining while there is cutting edge 0.7 to mess around with
Avatar
ChillerDragon 2020-01-23 14:55:47Z
yes
Avatar
appreciation of my work at this point
Avatar
You should fix the artifact names too btw
Avatar
@ChillerDragon
Avatar
ChillerDragon 2020-01-23 15:03:45Z
hm?
15:03
whats wrong
Avatar
the artifacts are prefixed by teeworlds-
Avatar
[3:15 PM] Ravie: hey I noticed an annoying thing in the editor: when you append layers that have envelopes onto another map that has envelopes the layers will keep the same number envelope instead of changing to what new number their old envelope got assigned
Avatar
ChillerDragon 2020-01-23 15:17:01Z
ah ye idk where that comes from was too lazy yet xd
Avatar
It's at the very bottom of the workflow file
15:17
The last step, uploading of artifacts
Avatar
Make that ddnet7 to match the others? πŸ˜›
Avatar
DDNet7*
15:20
or not?
Avatar
teeworlds used all lowercase, I thought you'd want to be compliant
Avatar
ChillerDragon 2020-01-23 15:22:47Z
can we pls rename ddnet6 to ddnet6 and ddnet7 to ddnet :p
Avatar
You wish
Avatar
ChillerDragon 2020-01-23 15:23:51Z
πŸ™‚
15:25
a9e3a40 Migrate to Github Actions - Learath2 4451fed Fix missing include - Learath2 6965326 Fix package names - Learath2 2335959 Merge pull request #2045 from Learath2/dd_pr_actions - Learath2
Avatar
@Learath2 can we get a badge with a useful link? πŸ™‚
Avatar
Sure, where would you like it to head?
15:34
To the workflow page?
Avatar
yes
15:34
somewhere where I can see a more detailed status
Avatar
Will do in a sec
Avatar
c353664 Fix out of buffer when entering a server with many votes and then login to rcon - fokkonaut
Avatar
@heinrich5991 apparently there is no link to the latest run, best I can do is link to the page with all runs
Avatar
that page is not public i think
Avatar
Oh, yep that's not public
Avatar
@heinrich5991 I don't see anything to link to that'd be useful, except maybe the latest commit itself
15:54
Sadly their links are not handled that well so you can look at commit/master but not commit/master/checks you need the full commit sha for that
15:58
apparently they are working on a public version of the /actions page so I guess we can wait for that
Avatar
ce93295 Add some more commands - fokkonaut
Avatar
@μ—¬μš° 였빠 seems to have a libcurl issue I can't diagnose, it's timing out and giving it more time doesn't seem to help but he can access the link from a browser and that works
16:19
@jao how does one append maps?
Avatar
And what does appending a map do? :P
16:29
Just adds the layers from the second map to the first?
Avatar
Actually, this seems to be taken care of
Avatar
merges the other map into the current map, excluding game layers
17:01
btw that could be optimized to discard duplicate layers/images/envelopes/etc
Avatar
It could be, but the problem ravie mentions seems to be accounted for in the code
17:02
if it doesn't work, it's a bug
Avatar
can u link code?
Avatar
ChillerDragon 2020-01-23 17:05:35Z
oh @jao the editor pro could you please add quad mass delete πŸ™‚
17:06
its easy to shift select quads and spam then all over the place and then it takes ages to move or delete them
Avatar
@Ryozuki what is a CChatCommands and why didn't you abuse the console like we did for it? πŸ˜›
Avatar
Abuse?
17:07
monkaS
Avatar
@jao game/editor/io.cpp:L1322
Avatar
U mean the server side commands added on 0.7.4
Avatar
Is smth wrong?
Avatar
Not really, I was just wondering why you didn't just let the console handle it
Avatar
I added a packet i think its way better
Avatar
@Learath2 i made the server redirect the packet to the console, like through the chat
Avatar
I understand the packet, I don't understand why you don't just execute the command as a console line to get the free argument parsing and stuff
Avatar
(ddnet7)
17:11
Idk
17:11
I made it simple, you can do like fokkonaut i guess
Avatar
I guess keeping it abstract like this is good enough, should be simple enough to override it
Avatar
Better not bloat it, u know how sensible tw devs are
Avatar
@Ryozuki I added this to official ddnet7 already
17:12
nice
17:14
only added more or less important commands for now
17:14
also, added this cmdlist entry, when executing that, it will send the cmdlist, thats what Com_Cmdlist is for
Avatar
@Ryozuki is there autocompletion btw?
Avatar
yes, using enter
Avatar
Only for command
Avatar
so the server is sending the cmdlist aswell
17:14
sadly
Avatar
Hardcoded?
Avatar
I planned to add autocompletion someday but holidays ended
Avatar
send the cmdlist
its the same, old cmdlist in chat
Avatar
Server sends 1 packet to client with info about a command
Avatar
I added this, so player can select it with the arrow keys, and if they hit enter it will send the cmdlist
Avatar
Interesting, I'll take a peek
Avatar
I needed to modify the parameters for the command callback, and I added a check, whether the callback is 0 or not, if yes, execute the command like an old command, using the ExecuteLine thing, but if there is a callback, then of course it, like Com_Cmdlist
Avatar
@Learath2 void CLayerTiles::ModifyEnvelopeIndex(INDEX_MODIFY_FUNC Func) { }
17:24
empty function
Avatar
Do Tile layers even have envelopes?
17:33
color animations
Avatar
What for?
17:33
ooh
Avatar
could we maybe display the envelope name in the layer menu?
17:39
ok too hard
Avatar
ChillerDragon 2020-01-23 17:40:52Z
What for?
To change color of tiles? xd
17:41
i use it sometimes to do pulsating freeze
17:41
u can also make flickering startlines
17:41
rainbow main tiles idk
Avatar
@ChillerDragon fix the macos bug in my pr
Avatar
ChillerDragon 2020-01-23 17:42:40Z
yikes
17:42
where
17:43
hdiutil: create failed - no mountable file systems
Avatar
ChillerDragon 2020-01-23 17:43:15Z
y i see
17:43
yikes
17:43
python2 lol
Avatar
ChillerDragon 2020-01-23 17:43:58Z
didnt build any 0.6 mac in a while idk right now
17:44
maybe run it with sudo? xd
Avatar
upgrade to py3 :D
Avatar
@Ryozuki why is there a MAX_COMMANDs btw? the autocompletion thing can't scroll?
Avatar
no, sadly
17:46
can only have 22 commands in there max
Avatar
Hmm, guess I'll have to code that first
Avatar
what are you trying to do?
Avatar
Well just making this into a complete feature
Avatar
With no command limit and autocompletion
Avatar
autocomplwetion is there
Avatar
Autocompletion for commands the client doesn't have to know about before compilation that is
Avatar
Oh, that is already there indeed
17:49
Couldn't get mine to complete for some reason πŸ€”
Avatar
enter
17:55
@Learath2 will they be sorted alphabetically?
17:56
dont know whether they should or not
17:56
it breaks freedom
Avatar
@ChillerDragon what happend, why do the workflows complete now
Avatar
ChillerDragon 2020-01-23 18:01:49Z
xd
18:01
idk
18:02
maybe ur branch was behind the fix from learath
Avatar
I re ran them, it had trouble with the macOS vm
18:13
some stupid bug with storage mounting
18:17
Oh, workflows break bors too
Avatar
b84cfd6 Fix spam protection for SQL score - fokkonaut
Avatar
62105bc Try fix bors - Learath2 4ef9866 Merge #2047 - bors[bot]
Avatar
Is there a way to get the max amount of glyphs that will fit in a given width?
19:16
@Deleted User you'd know if there is one
Avatar
do u know the font size?
19:27
if so you can load the glyph metrics and just advance a variable by the glyphs width + its bearing
Avatar
ChillerDragon 2020-01-23 19:27:46Z
@heinrich5991 is there any ddnet tool or libtw thingy where i can search for ddnet map settings? I tried strings but that doesnt seem to work
Avatar
A dropdown would've worked better, but we don't have one
19:28
9dcfcc8 Modify envelope index when appending maps - 12pm 5c4fd72 Merge pull request #2046 from 12pm/pr_fix_env_append - Learath2
Avatar
@jao can you try the envelope thing?
19:28
@Deleted User yeah I know the size
19:29
But I don't know the text in advance
Avatar
ah, then its impossible
19:30
u can load the max possible width of a glyph tho
Avatar
@ChillerDragon you can run config_retrieve on a map to get the config out of it
Avatar
ChillerDragon 2020-01-23 19:31:36Z
i knew there was soemthing like that awesome thanks
19:31
when i run apt install ddnet-tools do i have that in my path?
Avatar
https://www.freetype.org/freetype2/docs/tutorial/step2.html 3. Global Glyph Metrics max_advance_width
FreeType Documentation
Avatar
Oh that sounds like it'd be useful
19:32
Who knows, idk how we package ddnet for distros
19:32
if you build it'll be in your build directory
Avatar
do you need it for teeworlds @Learath2
Avatar
@Deleted User yeah
Avatar
then remember the font size is recalculated to a virtual screen size
Avatar
ChillerDragon 2020-01-23 19:33:14Z
hoq does it work @Learath2 ? i excpedted a config in stdout or something
19:33
Avatar
DDraceNetwork, a cooperative racing mod of Teeworlds - ddnet/ddnet
Avatar
@ChillerDragon I think it needs to be mapname outputfilename
Avatar
ChillerDragon 2020-01-23 19:34:54Z
hm
19:35
[2020-01-23 20:33:57][usage]: ./config_retrieve FILE1 [ FILE2... ]
19:35
thats unintuitive
Avatar
@Deleted User so I need to scale the max_advance_width the same way, right?
Avatar
ChillerDragon 2020-01-23 19:35:45Z
ah nvm it created a cfg next to the map thanks a lot @Learath2
Avatar
better scale the font size and load the metrics for the actual font size then
Avatar
ChillerDragon 2020-01-23 19:35:55Z
should be documted somehow
Avatar
freetype can round some metrics for some font sizes up and down
Avatar
@Deleted User Well we already have the font loaded, I was thinking of using that
Avatar
Some Teeworlds stuff in Rust. Contribute to heinrich5991/libtw2 development by creating an account on GitHub.
19:38
literally the tool you asked for
Avatar
ChillerDragon 2020-01-23 19:38:33Z
yea @heinrich5991 learath was faster but thanks πŸ™‚
Avatar
Well I'm guessing the libtw one can output to stdout and has better documentation πŸ˜›
Avatar
yeah but metrics are always per font size
19:40
you cannot use font size 100 and just recalculate variables, because freetype has some degree of freedom
Avatar
@Learath2 envelope thing works
19:40
oh wait u mean ur pr
19:41
@Learath2 cp the truncate code from how image names are rendered in layer menus
Avatar
@Deleted User how do we afford to load the font in the wrong size and then scale it then?
Avatar
a font is not really size depended, you can request a fontsize and freetype calculates the font u are using to that metric
19:44
font glyphs are vectorized most often
19:46
FT_Set_Pixel_Sizes(pFont->m_FtFace, 0, pSizeData->m_FontSize);
19:46
CalculateTextWidth
19:46
ah
19:46
right i use for the gametile layers CalculateTextWidth
19:46
but not sure rn if its limited to numbers only
19:47
well u need a textless version anyway
19:47
but maybe that gives u the idea
Avatar
@jao thanks for the tip, done
19:50
@Deleted User hmm, I can't quite say I get it. If a font is not aware with which size it's loaded, how does it know the max_advance_width?
Avatar
thought u know the font size
19:50
then u can just tell freetype
Avatar
When we load a font we call FT_New_Face, The FT_Face we get has the field max_advance_width. Yet we gave no indication of font size yet
19:53
The global metrics are given in "font units" apparently
Avatar
FT_Set_Pixel_Sizes(pFont->m_FtFace, 0, AcutalFontSize); int MaxTextCharacters = (int)((float)Width / (pFont->m_FtFace->size->metrics->max_advance >> 6));
19:54
but you do know the font size?
Avatar
Depends on what you mean by fontsize. I know it in terms of the units CTextRender would use
Avatar
yeah
Avatar
Idk what CText/CTextRender would push to underlying freetype though
Avatar
text render gets a font size then recalculates it to fit the transformation from virtual screen to actual screen size then u can use the actual size to get the font size displayed on your actual monitor and thats also the font size freetype needs
19:58
https://github.com/ddnet/ddnet/blob/master/src/engine/client/text.cpp#L1397 just use the code and all vars needed to get that actual size
DDraceNetwork, a cooperative racing mod of Teeworlds - ddnet/ddnet
19:58
thats the font size u can then use in FT_Set_Pixel_Sizes
Avatar
What's the idea with a virtual screen anyway, I never really touched much of the graphics code
20:00
Why are we doing all this rescaling?
Avatar
i think mostly so full hd looks same as 4k
20:00
bcs same aspect ratio
20:01
tw also uses it too define a maximal possible view distance
20:02
dunno hard to explain, tw makes some weird stuff
20:02
tw is also flipped upside down
20:03
just to flip it upside down in the end xd
20:03
but actually to make it ez to create the gui
20:03
from top to buttom πŸ˜„
Avatar
I should read all this sometime
20:04
Why are you shifting the max advance btw?
Avatar
if i remember correctly freetype uses a own metric which isnt pixels
20:04
and thats how u get the pixels xd
20:05
The metrics found in face->glyph->metrics are normally expressed in 26.6 pixel format (i.e., 1/64th of pixels)
Avatar
Ah, for fractional placement
Avatar
dunno if thats only for glyphs
20:06
They are expressed in 26.6 pixel format but rounded for historical reasons.
20:06
ok
20:06
so should be right
Avatar
Thanks @Deleted User
Avatar
@Learath2 i dont like the wider menu
20:18
and u still need to show the envelope number since names arent unique
20:19
like "6: name" if it has a name otherwise just the number
Avatar
Huh, I thought wider would be better, I can shrink it down again
Avatar
youre also not checking if the name is empty
Avatar
Fixed both
Avatar
Freetype is special
Avatar
@Ryozuki I don't quite like that you have 2 copies of CChatCommand, 1 on the client and 1 on the server, but I don't see a nicer way to do it either
20:29
did you have something in mind that you didn't do because you didn't feel like spending the time?
Avatar
@Learath2 sending current args to sv to request autocompletion values
20:33
All its own packeta
20:33
Packets
20:34
If packet is too big just put a flag that more autocompletion values will arrive on thebprevious packet
20:34
Idl if its good idea but i was lazy
Avatar
@Learath2 looks good now
Avatar
[quakenet] Learath2 BOT 2020-01-23 20:51:19Z
@louis feel free to merge it then
Avatar
wrong jao
20:53
forgot to change name back lol
Avatar
oh, there is another jao πŸ˜›
Avatar
2abe4fb Display envelope name - Learath2 a2eee9a Truncate properly - Learath2 e567fde Names aren't unique, thinner popup - Learath2 8ab8834 Merge #2048 - bors[bot]
Exported 304 message(s)