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-09-22 00:00:00Z and 2020-09-23 00:00:00Z
Avatar
@fokkonaut you need to test again if you mod works. This time i also did the test for masked entites(but not for non masked ones).
Avatar
@plsplsplslol for mapping i do f2 restart to update the map
@louis why u dont use the "reload" command
07:22
:O the RC found a big bug actually
07:22
(unmasked stuff)
monkalaugh 1
07:22
monkalaugh
Avatar
[quakenet] ChillerDragon BOT 2020-09-22 07:56:47Z
@Ryozuki what is RC ?
Avatar
search it urself
Avatar
Release candidates, pre-release for tests so there are less bugs at actual official release
Avatar
Should I add a release candidate channel in steam as well or is it ok to test by raw download only?
08:19
The nightly usually contains all the stuff that will be released anyway
Avatar
i think nightly is enough
08:41
i think should be make (run server)auto ready like anyservers(ddrace) have all maps old and new As a result of this:1- more servers 2-Less stress on basic servers 3-searching for server less laggy become easier
Avatar
@hussainx3 we can't ship all maps because we have no licenses. it would take too much space. You can use https://github.com/ddnet/ddnet-maps if you want to do that locally, but you don't get official ranks. Also, home connections are usually not good enough for hosting servers, you need to forward ports and you invite DoS attacks that your ISP will definitely not like.
All released maps on DDraceNetwork, see also https://ddnet.tw/releases/ and https://maps.ddnet.tw/ - ddnet/ddnet-maps
Avatar
hmm this Harder than what it looks like
08:52
sorry
08:52
brownbear
11:14
Or maybe it will just pretend it's ok but then add some cyanide 10 years later to my coffee for that.
Avatar
could someone please explain me what the Quad "Tex U", "Tex V" represent and why they are always multiples of 1024, but when stretching (holding shift and dragging a corner) it visually changes without changing the values, only when you drag far enough?
Avatar
i think its something like texture coordinates
11:22
e.g UV mapping
11:22
The letters "U" and "V" denote the axes of the 2D texture because "X", "Y", and "Z" are already used to denote the axes of the 3D object in model space, while "W" (in addition to XYZ) is used in calculating quaternion rotations, a common operation in computer graphics.
11:22
UV mapping is the 3D modeling process of projecting a 2D image to a 3D model's surface for texture mapping. The letters "U" and "V" denote the axes of the 2D texture because "X", "Y", and "Z" are already used to denote the axes of the 3D object in model space, while "W" (in ad...
11:23
@Patiga
Avatar
hm i dont quite get it, why do we need a 3d texture mapping process in a 2d game? can we kinda simulate 3d spheres to give the impression of 3d or smth @Ryozuki ?
Avatar
it has nothing to do with 3d
11:32
i think
11:32
UV is just texture coordinates
11:32
we dont use XY for texture coordinates cuz they are used in the model space
Avatar
ah so that we can also only take a small part of the picture?
Avatar
i think this has to do with the model view projection
11:33
i did a bit of opengl
11:34
Texture coordinates specify the point in the texture image that will correspond to the vertex you are specifying them for.
11:34
I know that I have to do call one of the following before each call to glVertex: glTexCoord(0,0); glTexCoord(0,1); glTexCoord(1,1); glTexCoord(1,0); But I have no idea what they mean. I know,
Avatar
the values are still weird tho, ive taken 2 pictures with different resolutions and the values were always 1024, so i guess 1024 = 100%. however, why does it only go up/down in steps of size 1024
Avatar
"Texture coordinates define how an image (or portion of an image) gets mapped to a geometry."
11:36
xd
11:36
idk why it goes in steps of 1024
11:36
that must be tw specific
11:37
jupstar should know
11:37
he added that thing iirc
Avatar
@Patiga I think I explained it to you once here
11:45
Oh, I never figured out what's wrong with the display values though
11:48
I think it's because we use fixed point numbers
11:51
Yeah, the display value is completely off
Avatar
Yeah, the display value is completely off
ah, thats what i was mainly wondering about
Avatar
Today we announced we’re joining the Microsoft family...
Avatar
Fixed the UV thing
Avatar
isnt sunny side up by ravie
Avatar
oops, I added the wrong map 😄
12:19
I mean I'm also talking to Ravie, but still waiting for response
Avatar
sunny side up such a beautiful and welcoming map :)
12:22
*is
Avatar
thonk I don't know how to build SDL2
Avatar
It's rather easy with cmake
Avatar
do i just build it and throw it into the others folder
Avatar
This fixes the issue with the Tex UV coords being complete garbage
Avatar
@Patiga that should do it
12:32
@TsFreddie which OS are you on?
Avatar
windows
Avatar
I think you can just replace the dll with yours
12:32
i'll try that
Avatar
@heinrich5991 uhm, check_style fails but fix_style doesn't fix anything
12:39
am I holding it wrong?
Avatar
link?
Avatar
python scripts/fix_style.py --base HEAD^
12:40
do you do this?
Avatar
Nope, I didn't set a base
Avatar
if you don't set a base, it only tries to fix uncommitted changes, sorry, need to document this script every dev has to use better
Avatar
I think we should do the entire repo
Avatar
possible contras: - we might change formatting again, because we can't review all the changes - because clang-format might change again in the future - makes it incompatible with cherry-picking other commits
12:43
pros: we don't need to have such an annoying script
Avatar
But right now we're not reviewing the foramtting either
12:43
i just run it and add a commit and never look at it 😄
Avatar
hm. I do and I thought the reviewer also looks at the formatted code
Avatar
I use ?w=1
Avatar
Oh, can we allow one line functions? We have many T foo(K bar) { return sth; };
Avatar
and I thought the whole idea of using clang-format is that you don't have to look at formatting
Avatar
@Learath2 that's something that quickly becomes impossible after using clang-format on the whole codebase
12:45
idk, try to see if you can configure clang-format that way
Avatar
This is why I hate formatters :/ Why does it have to be so opinionated?
Avatar
0ec7f1e Fix dilate threshold & automatically apply dilate on embedded textures in the editor - Jupeyy d9e748e Merge #2888 - bors[bot]
Avatar
it's the least opiniated formatter I've seen
12:46
it just needs to be configured/maybe even patched
12:46
they probably accept your pull request
12:46
it's just that they can't possible accomodate all styles from the get-go
Avatar
I was actually thinking of patching clang-format to let us have lax formatting for bitwise operators
Avatar
it wasn't important enough for me, I realized I didn't really care whether there are spaces there or not
Avatar
is it known thing?
12:47
1,3 is a teleports (steam version) (edited)
Avatar
Yes, I'm waiting for @Deleted User to fix it
Avatar
I only care to minimize diffs, style I'm not so sure I mind
12:48
Ah @heinrich5991 if you have a minute, #2902, I think it's okay, but not sure
Avatar
@fokkonaut you need to test again if you mod works. This time i also did the test for masked entites(but not for non masked ones).
Avatar
oh, I realized that I enabled nightly builds
Avatar
ah, that's the fix already
👍 1
12:50
hmm
Avatar
@TsFreddie nice, how'd you get that working?!
Avatar
@Learath2 what behavior does that change?
Avatar
or is it looking wrong?
Avatar
it seems identical in behavior
Avatar
Ah, that is Teeworlds, not DDNet 😦
Avatar
it is sdl related. should be the same on DDnet
12:51
but i don
Avatar
@heinrich5991 Well it's not identical, it fixes the issue 😄
Avatar
but i don't know how were they suppose to work before. i disabled the uiless mode in SDL. but this won't work in fullscreen.
12:52
i don't know. this is weird
Avatar
but if I can't see the difference, I can't merge it ^^
12:53
ah
Avatar
before, m_SoundEnvOffset was always set to the same value as m_PosEnvOffset, due to wrong behavior in the ui.
Avatar
@TsFreddie I looked quite a bit into this, sadly it's a rather difficult problem to get the ime to work with actual fullscreen :/
Avatar
ye...
12:53
it looks like they were going to do it but give up
12:53
i mean for fullscreen
Avatar
I looked into actually rendering the candidate window ourselves, but it's so hard on linux when there is no common protocol to get the candidates out
Avatar
does linux have problem will fullscreen too?
Avatar
There is a fullscreen issue on every OS I think. When the game has complete control over the monitor, the OS can't render the IME window on top
Avatar
ok...
Avatar
With borderless "fullscreen" it works on every OS though
Avatar
on windows at least, looks like they gathered all the candidates
12:55
but never used them
Avatar
Yeah, I was going to write a SDL patch to expose IME candidates on every OS
Avatar
there were IME_ShowCandidateList that looks like that it suppose to create a texture of some sort for the list. but the methods are empty.
Avatar
I guess they also came to the conclusion that the insane state of Linux IMEs is impossible for them to navigate
Avatar
can we do it on windows since it is kinda already there
12:57
expose the candidate list to us
Avatar
SDL would need to be an ibus and fcitx client at the very least to support a large portion of the users on linux
12:58
@TsFreddie Yeah, on windows it's doable
12:58
It's such a shame that the people who made XIM didn't think to have an API to get candidates
12:58
XIM is the only common ground between all input managers on linux
Avatar
is japanese imes mostly XIM?
Avatar
fcitx seems to be the most popular
Avatar
i think chinese ones are mostly ibus and fcitx
Avatar
I think for chinese I've seen many people using fcitx-googlepinyin
Avatar
saddog rime was popular too
13:00
rime has both ibus and fcitx frontend
Avatar
There is a fullscreen issue on every OS I think. When the game has complete control over the monitor, the OS can't render the IME window on top
@Learath2 i dont have any issue with fullscreen on my arch linux i3gaps setup
Avatar
@Ryozuki is it real fullscreen or borderless?
Avatar
my setup doesnt care
13:01
i enable and disable all them its the same
Avatar
Really? It can render an IME candidate window on top of a fullscreen game?
Avatar
ah idk about ime
13:02
i thought those were 2 separate sentences
13:02
xd
Avatar
Then what did you answer? 😄
13:02
Ah
Avatar
on windows you can kinda render the ime in exclusive fullscreen
13:03
without rendering yourself i mean
13:03
it just flashes a lot when you do it
Avatar
There are multiple input method styles which you can read about here. SDL supports "on-the-spot" mode. This has an important implication: the application is responsible for drawing the composition.
Avatar
Ah, the usual hack
Avatar
we know about on-the-spot already.. the problem is the candidate list
13:03
i think we should render that candidate list?
13:03
and we can't
13:04
lol
Avatar
This is the conclusion we both came to 😄
Avatar
why not?
Avatar
We can't get the candidates
13:04
Not on all systems anyway
Avatar
on windows you can, but it is not currently exposed to teeworlds
Avatar
We can get it on windows, I thiiink I can get it using some arcane APIs forgotten by most on macOS
Avatar
and linux?
13:05
the most important of the 3?
13:05
monkalaugh
Avatar
On linux I think I figured out how to do it for fcitx. No idea about ibus, it's really really hard to read all of the ibus code
Avatar
i think
13:05
fcitx is enough
Avatar
ibus is pretty buggy for me when I tried to use rime with it
Avatar
ibus-rime
Avatar
wuhmm i think most ppl use fcitx anyway
Avatar
We should mostly focus on Windows btw
Avatar
what about uim
Avatar
very low player numbers on Linux ond Mac
Avatar
well others can focus on that
Avatar
you don't need candidate list with uim (i'm guessing
13:07
it is a CJK problem after all
Avatar
ill definitly put all my power to the linux master race
13:07
monkalaugh
13:09
on windows you can, but it is not currently exposed to teeworlds
@TsFreddie and how do u expose it
13:09
what do u mean by exposing it anyway
Avatar
SDL patch
13:09
Something like SDL_GetCandidateList I'd guess
Avatar
why make a patch
Avatar
what do u mean by exposing it anyway
@Ryozuki there isn't a SDL api to get the candidate list out of SDL.
Avatar
Atleast that's what I was planning to implement
Avatar
why not make the platform dependent code directly
13:09
on ddnet
13:09
if sdl doesnt have it
Avatar
We can do that too, but if we go through all the trouble, why not let other people have it too? 😄
Avatar
ah well yea, but u dont want to wait to get that patch on sdl
13:10
it will take forever i think
Avatar
Not very open source of you @Ryozuki. Stallman would be disappointed
Avatar
also SDL consumed all the messages already. it'd be hard to get anything after SDL
Avatar
@Learath2 D:
Avatar
well we can do it before SDL, but that's more trouble
Avatar
i just wanted to get it first on ddnet
13:10
and ddnet is open source
13:10
justatest
Avatar
I never really looked into how it is on windows, isn't the candidate list exposed only on demand there?
13:12
its win32 api its usedd in this things right
Avatar
i think it was messages if you are telling windows to give it to you instead of the imm context
13:12
Avatar
something like this. but IME_ShowCandidateList does nothing lol
Avatar
Ah, an event based api would be much more efficient anyway
Avatar
since it's not really interesting for most players, as long as things work fine
Avatar
i think they are planning to create a texture and rendering it in SDL.
13:14
on windows*
13:15
hence the SetTextInputRect is a Rect instead of a Point. so they know the texture size. but again. they didn't do anything with it. (guess)
Avatar
@Learath2 it looks like on windows 10 it doesnt work https://discourse.libsdl.org/t/ime-candidates-not-showing/25058/4
I’m using SDL2.0.10 on windows 10 and I have the same issue that input candidates don’t show up. I have tried building the library by myself but no luck.
Avatar
Depends on the IME, I think it's working on win10 for @TsFreddie
Avatar
it isn't working for me
13:18
eki did a hack that just skip SDL's IME processing. don't know if you guys are still using that
Avatar
586043f Use fixed point conversion consistently - Learath2 bbdcb70 Style - Learath2 06b5193 Merge #2906 - bors[bot]
Avatar
we can still use the hack but less aggressive on windows
13:21
instead of skipping all IME handling in SDL. we can just let SDL tell windows not to use uiless mode for IME
13:22
we can position the IME window that way.
Avatar
@TsFreddie yes, we are
13:23
then the priority is fixing backspace
13:24
i can try to work on that again. i did it years before but it is broken and i don't know why
13:24
also position the window would be nice
Avatar
It's rumored Microsoft will also buy SEGA and Atlus
13:36
Tomorrow to be announced
Avatar
the entire sega?
13:37
i'm interested but why is this in #developer
Avatar
Cuz i saw deen talk about microsoft buyin bethesda
13:39
Where matricks works (?)
Avatar
ok didnt know that
13:42
@deen for windows' SDL2, can you find SDL_windowskeyboard.c and comment out line 373 and 881-883? (in ddnet-libs)
13:42
13:42
13:43
also stop using SDL_DISABLE_WINDOWS_IME
Avatar
@TsFreddie Note that we use SDL 2.0.8 on Win btw
Avatar
wuhmm let me find the code on 2.0.8 then
Avatar
I can find it myself, just so you know
14:05
ye, it was in the same spot, they didn't change anything in between
Avatar
with --enable-ime right?
Avatar
7fd1bfb Update Windows IME SDL2 build - def-
14:14
de46e00 rebuild SDL2 with IME changes by TsFreddie - def-
14:14
[ddnet/ddnet-libs] New branch created: pr-sdl2-ime
Avatar
@TsFreddie There you go^
Avatar
thx.
Avatar
Do you need to test it or do you know it works already?
Avatar
i need to write something in ddnet to work with it
Avatar
@Learath2 merging https://github.com/ddnet/ddnet/pull/2861 is fine, right? binary search doesn't really apply there, we search each word in question in the string
Avatar
2ef344e set the correct variable - Patiga b437526 run fix_style script - Patiga 4875b09 Merge #2907 - bors[bot]
Avatar
35fc180 Finish /showothers 2 implementation on server - def- cfd32c3 Fix clang-format - def- 3a3d3bc Fix UpdatePlayerMaps - def- 2a3b254 Merge #2890 - bors[bot]
Avatar
c6ef987 Add LearnToPlay so we have at least two maps - def- 1b39526 Add Tsunami map - def- 5f4ed14 Add Sunny Side Up map - def- 8cc4487 Merge #2905 - bors[bot]
15:03
1505b64 Don't log skin downloading progress - def- ae4dc10 Inform players that they are in team already - def- 56b152e Remove failed downloaded files immediately - def- fddb8b3 Merge #2898 #2901 #2908 - bors[bot]
Avatar
well doeditbox still doesn't work cuz it doesn't use clineinput directly
15:07
oh wait it doesn't need to be. my bad
Avatar
@TsFreddie looks cool. Fullscreen will work too?
Avatar
it will flash in fullscreen on windows 10
Avatar
make windowed fullscreen the default? 😉
Avatar
but at least it might work. it was the same as the eki's hack in fullscreen.
15:12
input lag city*
Avatar
hm, fullscreen is default because it has best performance
Avatar
#2861 looks fine. I read it backwards I thought we were looking for each word of the msg in the list
Avatar
@Deleted User what is m_EntitiesIsLoaded[EntitiesModType + (int)EntitesAreMasked]?
Avatar
it now has 2 textures per mod
15:34
unmasked and masked
Avatar
should't it be 2*EntitiesModType + (int)EntitiesAreMasked?
15:35
like this, don't MAP_IMAGE_MOD_TYPE_FNG + true overlap MAP_IMAGE_MOD_TYPE_VANILLA e.g.?
Avatar
does it? IGraphics::CTextureHandle m_EntitiesTextures[MAP_IMAGE_MOD_TYPE_COUNT * 2][MAP_IMAGE_ENTITY_LAYER_TYPE_COUNT];
15:36
thats the member var now
15:36
oh sry
15:36
bool m_EntitiesIsLoaded[MAP_IMAGE_MOD_TYPE_COUNT * 2];
15:36
this 😄
Avatar
yes
15:37
MAP_IMAGE_MOD_TYPE_FNG+true is 6, but MAP_IMAGE_MOD_TYPE_VANILLA+false also is 6
Avatar
why isnt it 5?
Avatar
MAP_IMAGE_MOD_TYPE_FNG is 5, MAP_IMAGE_MOD_TYPE_VANILLA is 6
Avatar
i mean u are right yes
15:38
can u cancel bors
15:38
then i fix it
Avatar
it looked unrelated to this PR, which is why I merged it anyway. canceled
Avatar
yeah ok
Avatar
Mainly solves the backspace problem where you were able to delete from chat and ime comps at the same time. Also set the position of composition window Need some testing from other languages' users. Need https://github.com/ddnet/ddnet-libs/pull/14 to work on windows
Avatar
thonk see if this break something on linux
15:43
i have no idea
15:44
wait
15:45
why did some code disappeared.
15:45
oh i ssems clang-format breaks diff
15:45
it is hard to tell what changed.
15:46
what should i do.saddog
Avatar
you can use python scripts/fix_style.py --base HEAD^ to only run clang-format on the changed lines
Avatar
ok i'll try that
Avatar
ah, but you already formatted the change
15:48
do you still have the original lying arund @TsFreddie ?
Avatar
i can try ctrlz
15:48
might work.
15:48
it worked
Avatar
don't close editor ever
Avatar
@Learath2 @deen I guess reformat the whole codebase
15:49
the cons don't weigh up against the friction it creates
Avatar
oh well i don't have clang-format actually install. it was vscode did the clang thing
15:50
i need actual clang-format for fix_style to work right?
Avatar
yes
15:52
@TsFreddie maybe don't format the PR until we sort this mess out? idk
Avatar
wuhmm sure
15:52
i can hold on to this.
Avatar
@heinrich5991 with so many PRs open it's annoying, will have to resolve all the conflicts. We could wait until there are fewer PRs open
Avatar
how about set an date for the shift. where for one day you don't accept any PR, and notice everyone before that to switch to the new base when it happens.
16:43
okay one day might be too short
Avatar
nah, not really required, fixing a few PRs is ok.
17:22
usually we don't have 20 open
Avatar
eb7c84c Add hover for demo list - Jupeyy cfbe6d9 Merge #2910 - bors[bot]
Avatar
ᶰ°Konͧsti 2020-09-22 18:14:11Z
@plsplsplslol ctrl+shift+q bind doesnt work when not on a server or when in Menu on a server pls fix
Avatar
U
18:14
only function keys work on menu
18:14
since always
Avatar
ᶰ°Konͧsti 2020-09-22 18:15:43Z
wat
18:15
i could rq with ctrl+shift+q
18:15
before
Avatar
ᶰ°Konͧsti 2020-09-22 18:15:57Z
anyway
18:16
yes
Avatar
Active hack bro
Avatar
ᶰ°Konͧsti 2020-09-22 18:16:05Z
stfu
Avatar
This is command
18:16
F4+shift
18:16
Ch_mod_aimbot
18:16
Active_teleport_gfx-780
Avatar
how sad that the only key shortcut to exit the game is the standard one everyone knows
Avatar
[quakenet] ChillerDragon BOT 2020-09-22 18:17:32Z
esc->q
18:18
or f1->qi->tab->enter
18:18
oh nvm its f1->quit->enter
18:18
:/
Avatar
maybe show this button but only for a few releases then remove it so all the old players who want to skip menu can do so because it looks ugly
Avatar
@ᶰ°Konͧsti before ctrl shift q wasnt a bind
Avatar
there's no reason to teach new players to hide the menu, it's just for old players who don't accept a change so they know how to go into settings and find it
Avatar
yea the menu looks nice and it allows new players to easily change settings off the start
Avatar
in 16:9 u wont notice it that hard xD
18:23
in 5:4 everything looks bad
Avatar
btw the 4 links on left and bottom right version number i wish were in the corners
18:23
18:24
or smth like thiss
Avatar
puhh, thats too much taste discussion i think
18:26
i like it at the bottom, u like it in the mid
Avatar
@deen about RC could you please let people know about how much time they have (next time maybe). Will it be available in steam? (edited)
Avatar
rc i just nightly at a specific point of time
Avatar
yea, would be nice to allow steam to update my game to RC
18:30
like to nightly builds but I dont like them. But RC is fine
18:31
this is how other games in steam pre-release testing works, as far as I know
18:32
all people test the same version and report bugs. But nightly is not stable tho
Avatar
@BannZay steam has even more changes with the nightly. I guess I could also add an RC channel on Steam
19:50
but it feels like already no one is using the nightlies
Avatar
@deen nightlies to me like "let steam use unstable DDNet version". But RC - "let steam use DDNet pre-releases". I guess there will be much more people who ready to go with second sentence. But I think the real problem is that none knows about betas in steam, but once they know they might discard nightlies. Another profit of RC is shorter time when people reporting the same bugs which makes search of already reported things less hard, as people might be lazy to search for bugs... as me...
Avatar
@BannZay added Release Candidates branch on Steam
👍 1
Avatar
poor deen gets more and more work on his shoulders xd
Avatar
@Deleted User deen is a legend!
Avatar
he is
Exported 393 message(s)