Guild icon
Teeworlds
discord.gg/teeworlds / development
For discussions around the development of the official Teeworlds
Between 2022-02-07 00:00:00Z and 2022-02-08 00:00:00Z
Avatar
bruh not a bridge again
00:02
just mixing two versions is ugly af
00:02
3 would be horrible
Avatar
there you have your answer
Avatar
then don't merge. move.
00:03
😉
00:03
Avatar
how do you move? repeating all the ddnet changes on the 0.8 base? that is absolutely gigantic
Avatar
make an AI that does the job for u
Avatar
well, I was being sarcastic... but yes... that or doing your own rendition of DDnet for 0.8 lol just DDnet rewritten with hindsight in mind
00:06
since I did hear that DDnet had some "bloat" problem? I don't know if that was recognized though
00:07
cause one thing is bloat perceived from the outside and bloat perceived from the inside
Avatar
this is all hypothetical dev resources anyway
00:08
we have just enough dev resources to decorate the grave right now
Avatar
certainly
00:14
at least @Robyt3 is doing good work 😄
00:14
does the DDnet also suffer from a dev shortage?
00:17
cause if it does, it makes such outcome even less possible than it already is
Avatar
Avatar
Stiopa
and I do feel like the plan fell flat. Got a few "that's cool" but not much beyond that...
doesn't help oy has not said a word about it either so far ;/
00:22
don't even know if he is in the process of checking it out or anything...
Avatar
that's too much work to test, something like this would need to be played out a decent bit and get feedback
Avatar
well, I need any and all acknowledgements
00:24
we've had games, we've had some maps created
00:24
but the radio silence doesn't help on the other side
00:25
if people will see that there is an interest from the maintainer...
00:25
then getting interest of the players shouldn't be an issue
00:26
whereas currently it feels like some project that might not even see the light of day
00:27
The Draft PR has been there for almost half a year by now and the seeming radio silence does not help one bit honestly
00:28
even a simple "This would need to be played out sometime" would give a clear sign to people that oy would be interested in having it tested... somewhat
00:28
even if it might not end up anywhere, really
Avatar
I've also been demotivated to work on Teeworlds at all. I planned to do the HTTP masterserver for Teeworlds first for the longest time. I think more maintainers that you could talk to are necessary. this is not an attempt to get into the maintainership position
Avatar
That'd be great
00:31
Having to rely on a single person for resemblence of "official thought and future" is not ideal, especially if they are hard to reach
00:34
Doesn't help oy's response on the maintainer issue is just confirming that the low activity is reason to oy's inactivity...
Avatar
Avatar
Stiopa
then getting interest of the players shouldn't be an issue
I don't share that opinion
Avatar
Well it is something I felt while talking to a few community members
00:41
They didn't really see... the future in the project... They liked it, but were skeptical of how it would fit into oy's vision of the game etc. whether there was sense of committing to it further
Avatar
Avatar
heinrich5991
I've also been demotivated to work on Teeworlds at all. I planned to do the HTTP masterserver for Teeworlds first for the longest time. I think more maintainers that you could talk to are necessary. this is not an attempt to get into the maintainership position
direction would help a lot indeed. any other maintainer would be good progress, unfortunately there are very few (other than you) that have the intersection of skills and knowledge that it would take to be one
Avatar
I was able to get a semi-competetive game of 5v5s on earlier versions of the build and map, but as I went inactive and the "vanilla pro" community went into a decline, it has been getting harder
Avatar
but even when maintainer feedback is good, this community is comparatively atrociously bad at giving positive feedback
Avatar
haha.... I can somehow feel it
00:44
I know I ran a google document through people ^^
00:44
but well the visions themselves were not unified and some visions conflicted between people
00:45
didn't feel that bad though
00:45
of course there was much room for improvement
00:46
I felt like the way to get proper feedback on gameplay loop etc would be to just let random games run... and watch the demos
00:47
to see how people would tend to play more naturally?
00:53
But, umm, yeah, I feel like the conversation has slightly derailed
Avatar
in terms of community here, they dont like changes so feedback was and is always a hassle be it a mod or a map
Avatar
Avatar
Dune
  • 0.7 client mods only exist because of a small handful of people that aren't really active anymore
  • 0.7 skins almost don't exist
  • there are a few 0.7 server mods, but it's mostly version bridges or worse ports of existing mods. the new mods have zero players at the moment, and ZOMB3 doesn't even have an open server anymore
i made a 0.7 client aswell as a 0.7 server mod, that bridges to ddnet, its the other way around :)
Avatar
Can the automapper handle rotations?
Avatar
Avatar
Stiopa
does the DDnet also suffer from a dev shortage?
Yep, especially people capable of porting something the size of ddnet to 0.7. We only have a handful of people that have the skill set to undertake that but none of us really have the time nowadays
Avatar
Avatar
Stiopa
Can the automapper handle rotations?
no
Avatar
I started several rewrites of ddnet, but teeworlds really isn't set up well for writing maintainable mods. I always end up having to spend hours of my time trying to rework the base to allow for clean modding. Then real life came up and I sort of gave up on ever finishing a full rework, so I just made the bridge instead
Avatar
Avatar
Dune
no
so does this part of the code just not function?
Avatar
And I was just trying to port the server, the client patchset is also vast and some of the 0.7 changes are completely politically unacceptable to our players
Avatar
okay, question... how do I link to a particular part of the code?
Avatar
I looked in the code to answer you, looks like I missed a part of the code then
12:34
you can do that on github
Avatar
click on line numbers, then press 'y' to update the URL in the URL bar to a permanent link
Avatar
Avatar
Dune
pretty sure it is technically infeasible to move their current diff from 0.6 to 0.8 with their current dev resources (in a reasonable timeframe) (edited)
^
Avatar
Avatar
Stiopa
okay, question... how do I link to a particular part of the code?
You can add #Lxyz to the end of the url to hilite line xyz
Avatar
Avatar
Learath2
And I was just trying to port the server, the client patchset is also vast and some of the 0.7 changes are completely politically unacceptable to our players
like the packets for the name changes?
Avatar
idk how I missed that line, I was wrong
Avatar
Avatar
Dune
Click to see attachment 🖼️
hey just did that 😄 I think it worked
Avatar
uh, I didn't know this menu
Avatar
Avatar
Stiopa
like the packets for the name changes?
A lot of the things that moved out of snap are annoying for devs but we already figured out how to workaround those while developing the bridge. For the client the rendering changes, especially the way text looks seem to annoy people for some reason. For the server the patching out of weak hook is a big issue
Avatar
Some maps rely on the weak/strong hook?
Avatar
Yep, not only that we also have a leaderboard that can be harder/easier to beat if we change hook physics
Avatar
Right I can see how that is a really major red flag for moving
Avatar
Anyway, nothing that's impossible to workaround, it's mostly the fact that we'd need a lot of time figuring out tricks to workaround things like these, time we just don't seem to have :/
Avatar
well regarding weak hook... hypothetical 0.8 DDnet client could render that with no stutters, right? it would only be the 'base 0.8' client that would have problems But yeah, rewriting everything up to that point would be... a struggle
Avatar
the textrender would probably be one of the biggest struggles to port or unify
12:44
i tried merging master into the editor branch to get that somewhat up-to-date but I haven't looked at the textrender compile errors yet
Avatar
amount of differences grows with each passing oy's PR merge session 😄 though there are some PRs for DDnet that are put into the teeworlds repo too, right?
Avatar
system is mostly the same for both
12:46
I have a growing list of minor commits to cherry-pick from one into the other
Avatar
Avatar
ShootXen
in terms of community here, they dont like changes so feedback was and is always a hassle be it a mod or a map
about resistance to change, it does feel like so. People got too used to the current status quo. 😉
Avatar
predictably so. 0.6 lasted seven years. that means almost every player hasn't seen the game changed since they arrived, when 0.7 was released
Avatar
well 0.7 seems on a road to last even more...
Avatar
well, given the reduced development activity compared to 0.6, it is going to take longer to reach a threshold where compatibility break and content reset is worthwhile
13:23
it's debatable 0.7 reached it after seven years
Avatar
I bet teeworlds wouldn't have so much problems, if we would allow Clients to support older servers and Servers to allow older maps, too. Every major update is really compatibility breaking and adding a new divide. If 0.8 Clients support 0.7 Servers, too, there would be no need not to upgrade your Teeworlds Client
Avatar
yeah that's been mentioned...
14:43
normally it wouldn't be a problem but with bulk of the community playing mods
14:43
it becomes a real issue
Avatar
Avatar
Assa
I bet teeworlds wouldn't have so much problems, if we would allow Clients to support older servers and Servers to allow older maps, too. Every major update is really compatibility breaking and adding a new divide. If 0.8 Clients support 0.7 Servers, too, there would be no need not to upgrade your Teeworlds Client
then those are 0.7.x clients. major updates are defined by compatibility break
Avatar
then we should work on 0.7.6 :p
Avatar
well... there is a 0.7.6 milestone
Avatar
teeworlds hasn't introduced new features with backward-compatibility "hacks" so far
14:51
basically compatible for the most part, but some non-gamebreaking prediction errors somewhere
14:52
this is how ddnet stayed compatible with 0.6 while still introducing network changes similar to 0.7
Avatar
they don't always to be "hacks", in the case of maps a simple converting tool would be sufficient
14:53
and yes, you can't convert everything obviously
Avatar
Avatar
Assa
then we should work on 0.7.6 :p
yes, that's a better plan than 0.8
Avatar
Avatar
Assa
then we should work on 0.7.6 :p
https://github.com/teeworlds/teeworlds/issues/2135 is a blocker for any next version IMO
Avatar
Avatar
heinrich5991
teeworlds hasn't introduced new features with backward-compatibility "hacks" so far
hasn't it? those have been plentiful in 0.7.x. client-side race, chat commands,
Avatar
I remember implementing one for the added skin-changer 😄
Avatar
Avatar
Robyt3
https://github.com/teeworlds/teeworlds/issues/2135 is a blocker for any next version IMO
why this in particular? this is a severe issue but the existence of these hasn't prevented us from updating teeworlds
Avatar
Avatar
Dune
hasn't it? those have been plentiful in 0.7.x. client-side race, chat commands,
fair, haven't thought about that
Avatar
Avatar
Dune
why this in particular? this is a severe issue but the existence of these hasn't prevented us from updating teeworlds
if you really want a release, sure, but this severely limits the server browser so it should really be solved
Avatar
was this introduced in a commit after 0.7.5?
Avatar
yeah, I think so
Avatar
ah, that wasn't what I understood
14:58
my bad then
14:58
@oy oy added this to the 0.7.5 milestone on 12 Jan 2020
doesn't seem like it
Avatar
that's just the issue I think
14:59
the commit where oy fixed it is only on master
Avatar
I don't understand
14:59
the bug was introduced before 0.7.5
Avatar
for me this is a real blocker, I would have fun adding a materials layer with all kind of different properties and physics, but I really have trouble with the map standard itself. Also this might be blocked by the new editor
Avatar
so we released a version regardless of this bug persisting
14:59
so it shouldn't be a problem to release more versions with this severe bug?
Avatar
ah, sorry, I meant together with the comment by heinrich in on that issue
15:00
because it got worse due to a commit is only on master yet
Avatar
Avatar
Assa
for me this is a real blocker, I would have fun adding a materials layer with all kind of different properties and physics, but I really have trouble with the map standard itself. Also this might be blocked by the new editor
why are these "blockers". why shouldn't we update teeworlds with a 0.7.x until everything we really want is in?
Avatar
Avatar
Robyt3
because it got worse due to a commit is only on master yet
ah, I see
Avatar
so now we can't even fit 16 players into a server info packet
Avatar
it's a blocker because I can't do it
Avatar
Avatar
Assa
it's a blocker because I can't do it
that's not what blocker means, it means you can't release before it is fixed (edited)
Avatar
(not even 16 players in the worst case)
Avatar
2790 would be amazing to get... 🤩
15:04
regarding https://github.com/teeworlds/teeworlds/issues/2135 it seems like a pressing issue to fix.. but there does not seem to be much of a discussion on how to fix it :/
Avatar
one could fix it like ddnet did
15:06
(similar to, not exactly the same)
Avatar
I briefly tried merging the ddnet-serverinfo but teeworlds had already added a different token implementation so I didn't know how to combine them
Avatar
ah, I really wouldn't try to merge it, the ddnet one is a bigger hack due to the fact that 0.6 server info was so non-extensible
Avatar
yeah, basically have to rewrite it
Avatar
yes
Avatar
Avatar
heinrich5991
ah, I really wouldn't try to merge it, the ddnet one is a bigger hack due to the fact that 0.6 server info was so non-extensible
well it does seem like ddnet trying to keep up with the teeworlds 0.7 is far from ideal...? like, it seems like if not for the politically inexcusable changes, moving ddnet to a potentially more modern version would be quite the positive, barring the huge amount of effort needed to bring it to such a point
Avatar
what does it bring to ddnet?
Avatar
ddnet moved to an entirely different serverbrowser model
15:14
all servers are in here
Avatar
ohey, json 🙂
Avatar
hey, you motivated me doing something again 🙂
Avatar
(all 0.6 and 0.7 servers are in there, if someone wants to prototype a client implementation for 0.7 you can already get all the servers from there)
15:16
historical data is there: https://ddnet.tw/stats/master/
Avatar
Avatar
Assa
hey, you motivated me doing something again 🙂
That's why I like those discussions 😉
Avatar
can you tell me where I find the map-datatype?
15:20
my guess is map.h :p
15:21
what's the state of the new editor?
15:25
I see the numbers speak for themselves 😆
15:27
some map documentation
Avatar
just saw the video with ice physics, I find it weird that you gain speed on ice cause there is less friction
15:29
real physics says less friction --> harder to accelerate
Avatar
please don't use acceleration and speed as synonyms
15:30
the acceleration on ice is worse, it's 0.4 times the default
15:30
but your max-speed is higher, because there is less friction
15:31
imagine it as having a higher terminal velocity and it starts making sense
15:33
version_header: magic xD
Avatar
In computer programming, the term magic number has multiple meanings. It could refer to one or more of the following: Unique values with unexplained meaning or multiple occurrences which could (preferably) be replaced with named constants A constant numerical or text value used to identify a file format or protocol; for files, see List of file...
Avatar
what does a front-layer do in ddnet?
Avatar
it's a separate layer that mostly accepts the same entities as the game layer
15:39
so you can stack game tiles
Avatar
can you give me an example where it's usefull to stack game layer entities?
15:39
ah yes, a grenade inside a spawnpoint
Avatar
Also rebase the Ice physics PR to resolve the conflicts 🙂
Avatar
Avatar
Assa
can you give me an example where it's usefull to stack game layer entities?
mostly used for hookthrough tiles
Avatar
Saw the video about ice, velocity is damn too high when you run
15:44
But very cool, can be fun to play with
Avatar
Avatar
Robyt3
Also rebase the Ice physics PR to resolve the conflicts 🙂
do I really need to rebase or is an interactive pull enough? 😢
Avatar
Avatar
ReiTW
Saw the video about ice, velocity is damn too high when you run
already tweeked max_speed, the video is outdated
15:46
I used the values of run_icicle, you can check it on the Unique race servers
Avatar
Avatar
Stiopa
Click to see attachment 🖼️
the downside of refactorings
Avatar
rebase is cleaner than merging master. I never resolved conflicts using github's tool
Avatar
is run_icicle only on the CAN server?
Avatar
editor2 should be really separate files though
15:48
rebasing doesn't seem urgent to me
Avatar
Avatar
Dune
editor2 should be really separate files though
that's what you would hope, but we changed things that the editor2 interacts with
Avatar
Avatar
Dune
rebasing doesn't seem urgent to me
I meant the Ice PR, so it is actually in a mergable state
15:50
the text render was changed but the usages in editor2 were not adjusted, the rest is minor things like moving constants around that can just be solved with a text replace
15:50
i was looking at the short run server
Avatar
Avatar
Stiopa
is run_icicle only on the CAN server?
It's on every race server, but on middle, you can switch to the desired maps by using chat_commands: /map run_icicle (edited)
Avatar
yeah I just tested it 😄
Avatar
that map works with a tune-layer and therefore you don't have the fancy animations
Avatar
yeah it felt surprisingly smooth
Avatar
@heinrich5991 what is stored in CMapItemLayerTilemap in int int m_aName[3], if the layers have names, we woudn't require flags
15:57
mapitems.h
Avatar
the name as shown in the editor
16:00
you can rename layers
Avatar
but you can't rename the game layer for example
16:01
so i guess for game it's game, right?
Avatar
not via the editor, but the editor recognizes a renamed game layer
16:01
there are maps out there with localized names for game layer, at least russian and german
16:14
I think they then use other clients
Avatar
apparently
Avatar
why not flag a layer as a game layer and load each gamelayer in a dynamic array
16:23
I mean why by default that was done like that, with the name
Avatar
it's flagged and the name has no purpose
Avatar
ah, never went to read that part tho, don't know how it works
Avatar
but it would be smart to use names and I tell you why:
16:25
ddnet for example adds multiple other layers with their own flags like TELE_LAYER=2; and if we add other layers with their own flags now, too, we would break compatibility
16:26
therefore checking with name=="Teleporter" is smarter
Avatar
But then it would require to set fixed names, as with flags you could just create a button "Create teleporter layer" smth like this
16:26
well you can do the same with the name but
Avatar
the names can be fixed in the editor, your localization should only be used LOCALLLY
16:27
and not in the map itself
16:27
if I load a map a chinese player made, i don't want to have the gamelayer renamed in something chinese
Avatar
Well still someone could name a tile layer "Teleporter" if nothing is done to stop it (edited)
Avatar
Thats why I simply added another flag with the name OTHER and check for FLAG > 0
Avatar
yeah that's a good way to go with
Avatar
now we only have problems if people decide to implement the same things xD
Avatar
Well for ddnet, they went too far from the original game, would it be really necessary to keep any compatibility with them instead of just going forward & implement stuff
16:31
(by far I mean there's many features like those tele layers etc..)
Avatar
I was thinking the opposite, maybe we should add some features like teleporters and speedtiles
16:32
you can still disable them for pure mods
Avatar
Well I was always comparing teeworlds with quake, teeworlds looks a bit like a 2d version of quake, with less guns
16:33
would be cool with teleporters yeah
16:33
Even quake had the hook
Avatar
new features of ddnet use UUIDs
16:38
e.g. for the map, there's the automapper config that has an associated UUID
16:38
(this would correspodn to the UUID 3e1b2716-178c-3978-9bd9-b11ae0410dd8, e.g.)
Avatar
there are a few bugs with the datafile though
16:42
16:42
😛
Avatar
five years ago or so I decided that they're not exploitable. I hope I'll stay right 😄
Avatar
only the one I hotfixed was really exploitable
Avatar
ah, I meant "not exploitable beyond crash"
Avatar
and the latest snapshot fix might also have been, but not realistically
16:50
but there was actually an exploit map that would open the calculator
Avatar
oh wow
Avatar
but it probably doesn't work on every system
Avatar
so it was exploitable. nvm then
16:51
gif doesn't work..
Avatar
Additionally, the binary even has the stack protection disabled what makes it even easier.
16:52
that's an issue 😄
16:52
Unfortunately, there were no other bugs that could be chained to bypass ASLR. For the purpose of the exercise, I continued with ASLR disabled and use ret2libc technique to pop a calc executing system("/usr/bin/xcalc").
16:53
I think that was part of the reasoning why I thought it's not exploitable, ASLR
Avatar
ah, that makes sense
16:53
would be unlikely to be exploitable if the OS has ASLR
Avatar

Text Selection

!sel Implement keyboard-based text selection for console, chat and editboxes. Implement mouse-based selection for editboxes. Closes #12. Closes #1851. Word skipping (when holding Ctrl) is overhauled to be consistent with the Windows / Firefox experience that I took as reference. Password/Hidden input rendering and handling of unicode strings is fixed in the p...
Exported 245 message(s)