Guild icon
Teeworlds
IRC / bridge
One-way IRC channel bridge. If you want to be able to send messages to IRC, contact @Dune or @heinrich5991. https://www.teeworlds.com/?page=docs&wiki=rules/irc_rules
Between 2019-01-30 00:00:00Z and 2019-01-31 00:00:00Z
Avatar
[quakenet] <TeeSlayer> Is it intended that the search function in the server browser doesn't use the "Type", but only "Server" and "Map"?
01:26
[quakenet] <TeeSlayer> I know that it's possible to filter by type in "Server filter", but I think most people don't use that feature. They only use the bottom text field.
01:28
[quakenet] <TeeSlayer> The consequence of this is that (empty) servers that don't put everything in sv_name don't get much attention.
Avatar
[quakenet] <Dune> TeeSlayer: well, the gametype filter is there for that :/
Avatar
[quakenet] <TeeSlayer> Dune: why not both?
12:29
[quakenet] <Dune> because it's strangely redundant?
12:30
[quakenet] <TeeSlayer> well as explained above, I don't think that
12:30
[quakenet] <TeeSlayer> do I see that correctly? would #1539 solve the info change problem I
12:30
[quakenet] <TeeSlayer> 'm having?
12:30
[quakenet] <TeeSlayer> ehm, I mean https://github.com/teeworlds/teeworlds/issues/1201
With separating spectator slots (the amount of spectator slots should be the decision of admins) from ingame slots, we could solve some "issues" and open new ways to organize servers. Ben...
12:31
[quakenet] <TeeSlayer> about changing the local client's info
12:32
[quakenet] <Dune> I don't see how that's linked in any wya
12:34
[quakenet] <TeeSlayer> is there any reason why this got changed? that now the client doesn't care about what the server is saying about its own info
12:36
[quakenet] <Dune> the client info change happened many years ago, I can't answer you
12:37
[quakenet] <TeeSlayer> hm.. mods like infection and catch16 are heavily impacted by this, to the point that it probably wouldn't be worth porting/writing them. zcatch is kinda ok without that I guess.
12:38
[quakenet] <Dune> yeah, I know
Avatar
[quakenet] <Learath2> client doesn't care about what the server is saying?
12:52
[quakenet] <TeeSlayer> Learath2: you can't change how the player perceives its own color/skin
12:52
[quakenet] <TeeSlayer> only how others look like
12:53
[quakenet] <Learath2> Huh, really? I wonder what the cause of that patch was
12:53
[quakenet] <Dune> Cause you have to destroy characters to change player info, Learath2
12:54
[quakenet] <Dune> TeeSlayer: there might be workarounds though. e.g. if the mod constraint is that others must be the same color as you, you can just change others to match the client? :)
12:55
[quakenet] <Learath2> Dune: destroy characters as in the entity CCharacter?
12:56
[quakenet] <Dune> Since players info must now be constant in a game, you have to destroy them and rebuild them (like a leave/join) if you want to change them server-side
12:56
[quakenet] <Dune> I haven't messed with this much myself so I could be wrong but that's the idea
12:56
[quakenet] <TeeSlayer> Dune: I don't think any mod needs this^^
12:56
[quakenet] <Dune> I thought in some mods, colors are represented by teams, TeeSlayer
12:57
[quakenet] <Dune> teams are represented by colors*
12:57
[quakenet] <TeeSlayer> so then you have two colors?
12:57
[quakenet] <Dune> the idea is to have more than two teams with a color system iirc
12:57
[quakenet] <TeeSlayer> hm
12:57
[quakenet] <Dune> you might want to ask our expert @Lordsk
12:58
[quakenet] <TeeSlayer> but that messes up the scoreboard I think
12:58
[quakenet] <TeeSlayer> if multilpe teams are possible
12:58
[quakenet] <TeeSlayer> and you can choose the color for each team
12:58
[quakenet] <Dune> huh, there is a misunderstanding
Avatar
Yeah the client ignores any new client_info with its own client_id
Avatar
[quakenet] <Dune> the idea is you have a deathmatch type mod with colored tees, that's all
12:59
[quakenet] <Dune> and you can "infect" people to bring them to your team
12:59
[quakenet] <Dune> now technically you wouldn't be able to port such a mod from 0.6
12:59
[quakenet] <TeeSlayer> fair enough, that works for infection (not sure about infection class though :D)
12:59
[quakenet] <Dune> but you could work around it by sending to the client allies as the same color as him
12:59
[quakenet] <Learath2> what did keeping player info constant bring to the table?
13:00
[quakenet] <Dune> no idea - that change was done like 6 years ago
13:00
[quakenet] <Dune> iirc a PR by some guy I don't know
Avatar
we should really enable the old behaviour though
Avatar
[quakenet] <Dune> yes, but we can't
Avatar
I mean we could not ignore client_info to self in 0.7.3
Avatar
[quakenet] <Dune> sure, but that wouldn't achieve anything
13:03
[quakenet] <Dune> you can't tell if the client supports it or not
Avatar
It would fix mods trying to modify client info
13:03
that's a non issue
13:04
this is a mod only thing anyway
Avatar
[quakenet] <Dune> you still wouldn't be able to properly make a mod like this because 0.7.2 and below don't support it
13:04
[quakenet] <Learath2> Who stayt on old versions anyways?
13:04
[quakenet] <Learath2> stays*
Avatar
It would mean <0.7.2 ignores it
13:05
so it's fine
Avatar
[quakenet] <TeeSlayer> everybody's on steam now. best package manager for gamers
13:05
[quakenet] <Learath2> besides mods are free to do whatever they want, including just dropping clients < 0.7.3 with the message, "Update to play mod xyz"
13:05
[quakenet] <Dune> TeeSlayer: I'm pretty confident that isn't true
13:05
[quakenet] <TeeSlayer> ^^
13:06
[quakenet] <Dune> Learath2: I'm not sure if encouraging that is the best course of action
13:06
[quakenet] <Learath2> Encouraging people to update their client is not a good idea?
13:06
[quakenet] <Dune> Barring access to servers without a client update is debatable
13:07
[quakenet] <Learath2> Or encouraging mods to drop players that they can't possibly support?
13:07
[quakenet] <Dune> If a server is not compatible, it shouldn't be listed as compatible in the server browser, right
Avatar
do clients even send their version?
Avatar
[quakenet] <Dune> remember when you get dropped for wrong hashversion
13:07
[quakenet] <Dune> they do on connect
13:08
[quakenet] <Learath2> Hmm, good question, we've been sending it for ddrace for a loong time now. Don't remember if vanilla sends it
13:08
[quakenet] <Learath2> Dune: We don't list mods by default on the server list anyways, no?
Avatar
ah yes of course
Avatar
[quakenet] <Dune> there is no default really
13:08
[quakenet] <Dune> Teeworlds, Favorites and All are the default filters now :)
13:09
[quakenet] <TeeSlayer> Learath2: mods should appear in "All"
13:10
[quakenet] <Dune> by the way with PNG8 I get [5c519732][game/png]: failed to open file. filename='data/ui/gametypes/race.png' @LordSk 🦋 :(
13:10
[quakenet] <Learath2> I mean it sounds fairly reasonable to me, if there was any way to work around the issue I might agree with you but this is a case of a mod just simply not being able to support a given client
13:10
[quakenet] <koomi> Learath2: it's encouraging the creation of mods that can't support older (but supposedly compatible because 0.7) clients that would be problematic
13:10
[quakenet] <Dune> Sure but I mean what's questionable is whether you want to add features in Teeworlds that can only be supported by doing that Learath2
13:11
[quakenet] <Dune> yeah, that's my point
13:11
[quakenet] <Learath2> It's not encouraging anything, there is literally no benefit to not support older versions, it only limits your audience
13:12
[quakenet] <Learath2> It allows for other interesting mods for people who are updated though
13:12
[quakenet] <Dune> The only way to use that feature is to make this server hack that drops older 0.7 clients. correct, Learath2?
13:12
[quakenet] <Dune> (or to make it optional)
13:12
[quakenet] <koomi> yes it does, it makes doing that an accepted practice and will limit the mods available to those stuck on older 0.7 clients
13:13
[quakenet] <Learath2> koomi: stuck? stuck how? besides how does punishing people who do upgrade sound any more "moral" to you?
13:13
[quakenet] <koomi> because that's the packaged version in a stable distro for example
13:14
[quakenet] <koomi> or because newer versions have issues that one wants to avoid
13:14
[quakenet] <Learath2> So because some people can't enjoy a mod without downloading a tarball no one should?
13:15
[quakenet] <Dune> that's distorting the point :(
Avatar
I think the problem is different though, as it only affects mods
Avatar
[quakenet] <TeeSlayer> well theoretically it should be possible to add an option for the server whether that new feature is being used
13:16
[quakenet] <koomi> Learath2: false dichotomy, the choice is between going the easy but incompatible route or the hacky ugly but compatible route
13:17
[quakenet] <Learath2> there is no hacky ugly but compatible route
13:17
[quakenet] <TeeSlayer> so vanilla and other 0.7.3 mods won't drop old 0.7 clients
Avatar
Turning the option on won't change anything for anyone unless the modder decides otherwise
Avatar
[quakenet] <TeeSlayer> the alternative would be to wait for another 5 years until 0.8 arrives :D
13:17
[quakenet] <Dune> Adding a client-side feature that encourages the server to drop older clients while supposedly being in a compatible (0.7) version is debatable at best imo. If it's not compatible, it shouldn't broadcast itself as such
Avatar
The dropping client part is a decision on the modder part though?
Avatar
[quakenet] <Dune> I mean, we had some non-compatible features like 64 clients. Should we have added that to a 0.6.6 and dropped clients that didn't upgrade to 0.6.6 for 64player modded servers or made that a 0.7?
Avatar
I could do a mod right now that drops half the people at random
Avatar
[quakenet] <koomi> LordSk: yeah but it's enabled/encouraged by a potential feature of the official client
Avatar
I would call it thanos
Avatar
[quakenet] <Dune> Same goes there, it's only for mods, teeworlds could have extended the player limit for 0.6.6 and +. But isn't that a poor solution?
13:19
[quakenet] <Learath2> You can't regulate which clients a mod wants to accept. Would you ban all servers that refuse to serve 0.7.2 from the master list?
13:19
[quakenet] <Dune> Of course not?
13:20
[quakenet] <koomi> Learath2: in which case? for zcatch you can just send the color updates and older clients will ignore them, you would still get a playable game
13:20
[quakenet] <Dune> But you could debate the idea of introducing a feature that can only be used by servers that drop early clients, falsely broadcasting themselves as compatible
13:20
[quakenet] <Learath2> koomi: barely playable IMHO, you'd have to hack in some kind of indicator of currently captured tees, for infection class there is no workaround that I can think of
13:21
[quakenet] <Dune> why can't infection work, Learath2? I think I'm not familiar enough with that mod, maybe you could explain :)
13:21
[quakenet] <Learath2> re-introducing a feature that many players from the previous iteration of the game would like to see
13:22
[quakenet] <Learath2> you do realize that most of the 0.7 players would be coming from 0.6 and not steam right?
Avatar
So there one alternative right, wait for 0.8
Avatar
[quakenet] <koomi> yeah I'm not familiar with infection either, but zcatch without colors would be just fine IMO
13:22
[quakenet] <Dune> I would like that feature to be reintroduced if there was a nice way :)
Avatar
and we're stuck with this system for eons
Avatar
[quakenet] <Learath2> Dune: infection is possible, infection class introduces classes, your skin/color represents your class
13:23
[quakenet] <Dune> is it critical that the player knows his own class? can it be changed by the server?
13:23
[quakenet] <Learath2> yes and yes
13:23
[quakenet] <koomi> again, you can just introduce handling of client updates in future clients, but please please don't make dropping older but supposedly compatible clients a common accepted thing for mods to do
13:25
[quakenet] <Learath2> you say that like it would be detrimental, I fail to see how the 10 odd servers that would run infection class not accepting the 5 odd people stuck on an archaic distro is detrimental to the entire game
13:26
[quakenet] <Learath2> Besides dropping old clients is already common practice for block servers that get a huge share of the players, they literally drop everything except latest ddnet and latest ath
13:26
[quakenet] <Dune> any non-backwards compatible feature could have been introduced like that
13:27
[quakenet] <Dune> anything in 0.7 could have been done in a 0.6.6 afaik
13:27
[quakenet] <Dune> but that would be very ugly, wouldn't it
13:28
[quakenet] <Dune> (see the example with introducing a feature allowing mods to use 64p and thus encouraging to drop <0.6.5 clients)
13:28
[quakenet] <koomi> Learath2: maybe my fears are unfounded but IME making that sort of incompatibility acceptable often leads to lots of fragmentation in the user base
13:28
[quakenet] <koomi> and block is trash anyways :-P
13:28
[quakenet] <Learath2> 0.7 is a major change, respecting the server for playerinfo is a very very minor change that would only affect mods that HAVE to use that feature
13:29
[quakenet] <Learath2> koomi: yeah, but around 50% of the community plays block and if ddrace is ported over they'll be one of the major groups coming over to 0.7
13:29
[quakenet] <TeeSlayer> Learath2: it already is
13:29
[quakenet] <koomi> then please don't do it? :-P
13:29
[quakenet] <TeeSlayer> Learath2: I host a copy love box and blmap4 server
13:29
[quakenet] <TeeSlayer> on 0.7 :P
13:30
[quakenet] <TeeSlayer> blmapv3royal can't be supported yet though
13:30
[quakenet] <Learath2> Oh yeah, Dune was working on a minimal ddrace, didn't think you finished it though
13:30
[quakenet] <Learath2> s/you/he/
13:30
[quakenet] <TeeSlayer> Sadly I haven't seen anybody blocking on my block server yet xD
13:31
[quakenet] <Dune> Learath2: it's actually a very small amount of code
13:32
[quakenet] <Learath2> Dune: we introduced 64p in a way that supports all clients, ddwar ddrace and ddnet could have easily dropped older clients and called it a day
13:32
[quakenet] <Dune> yeah I know
13:32
[quakenet] <Learath2> But in that case there definitely was a workaround
13:33
[quakenet] <Learath2> Quite an unpleasant one I have to admit, but it worked decent enough that we didn't have to drop anyone
13:33
A retro multiplayer shooter. Contribute to axblk/teeworlds development by creating an account on GitHub.
13:33
[quakenet] <Dune> the mod is not even 300 lines of code :)
13:34
[quakenet] <Learath2> Anyways, it's not a feature I'm interested in. I just find it interesting that you are all so strongly opposed to such a minor change
13:34
[quakenet] <Dune> I would love to see that changed back :/
Avatar
Also for the infection class thing, couldn't you just broadcast the class to the client?
Avatar
[quakenet] <Dune> that's a good point - other clients info can be changed, and the local client can be informed via broadcasts
13:35
[quakenet] <Learath2> I mean sure as a workaround you could put it up in broadcast
13:35
[quakenet] <Dune> TeeSlayer ^
13:37
[quakenet] <Learath2> Never being able to introduce a feature because a released version doesn't support it is just a concept that sounds insane to me
13:38
[quakenet] <TeeSlayer> Dune: are you talking about the current version? as a workaround?
13:38
[quakenet] <Learath2> (for a game that is)
13:38
[quakenet] <Dune> yes TeeSlayer
Avatar
I'm still for enabling the feature though, I just meant you don't need to drop the "incompatible" clients
13:38
with the broadcast workaround
Avatar
[quakenet] <Dune> Learath2: it's just saying that compatibility-breaking changes should be kept for compatibility-breaking versions
13:39
[quakenet] <Learath2> If I was going for a fork of teeworlds one of the first things I'd be doing would be introducing an ISUPPORT message so the client and server can negotiate features
13:40
[quakenet] <Dune> then you would drop out major versions and broadcast a minimum required version for each server?
13:40
[quakenet] <Learath2> @LordSk 🦋 as soon as you enable it the only thing you can do is to hope that mod developers don't just end up dropping clients assuming you agree that dropping old clients is a bad idea it just opens a can of worms
13:41
[quakenet] <Dune> (by dropping out major versions I mean all version updates would be on an equal foot)
13:41
[quakenet] <Learath2> Yeah something like that, either the server registers with the master a list of features it needs or a minimum version
13:42
[quakenet] <Dune> I see pros and cons :)
13:43
[quakenet] <Dune> But that could work well
Avatar
Honestly I agree with what you are pointing out
13:44
However we don't have any stats (I think?) that allows us to know what client version people are running
13:44
And the game population is already low as it is
13:45
Thinking about a perfect solution only applies to a perfect world
Avatar
[quakenet] <Learath2> I mean if you don't want servers discriminating towards game version best way to make sure is to not send the version :)
Avatar
Where there are millions of players all running somehow different verisons
Avatar
[quakenet] <TeeSlayer> Dune: could you give me a tip which method to use? I'm not entirely sure what is meant by that. LordSk did it like this: https://github.com/LordSk/teeworlds/blob/mod/zomb/src/game/server/gamemodes/zomb.cpp#L913 (while ignoring the local player)
A retro multiplayer shooter. Contribute to LordSk/teeworlds development by creating an account on GitHub.
13:46
[quakenet] <Dune> we only have stats on server versions - there are like 12 servers out of 70 0.6.x servers that use 0.6.5?
13:47
[quakenet] <Dune> TeeSlayer: just send a broadcast for self info?
13:47
[quakenet] <Learath2> As in use the broadcast to indicate which class you are instead of the skin
13:48
[quakenet] <TeeSlayer> but that's just textual, isn't it?
13:48
[quakenet] <Learath2> Well it is a workaround :D
13:48
[quakenet] <TeeSlayer> well ok
13:49
[quakenet] <TeeSlayer> I'm not porting infection atm, but zcatch^^
Avatar
You could color the text TeeSlayer
Avatar
[quakenet] <Learath2> Can you do color broadcasts nowadays? If so maybe you could use a color to indicate class
13:49
[quakenet] <TeeSlayer> Learath2: yes, but you have to enable it in the settings
13:49
[quakenet] <Dune> @LordSk 🦋 keeps this secret :D
13:49
[quakenet] <Dune> but yeah you can
13:50
[quakenet] <Learath2> Anyways, I have about 5 data structures I need to code up in C, so bbl :)
13:50
[quakenet] <Dune> (just a tease on how we need someone to write a presentation post on broadcast colors :p)
Avatar
[quakenet] <Dune> this says speeds are in pixels/s https://www.teeworlds.com/?page=docs&wiki=server_tuning
13:58
[quakenet] <Dune> I wonder what "pixel" means in context
14:04
[quakenet] <TeeSlayer> Dune: btw the default cursor in the gamer client looks horrible. everything else is amazing though^^
14:05
[quakenet] <Dune> huh I didn't change that afaik
14:05
A retro multiplayer shooter. Contribute to Dune-jr/teeworlds development by creating an account on GitHub.
14:05
[quakenet] <Dune> this?
14:06
[quakenet] <TeeSlayer> no the ingame cursor
14:06
[quakenet] <Dune> oh crap, mistakenly uploaded a random modified game.png
14:07
[quakenet] <Dune> game.png changes weren't on purpose
14:08
[quakenet] <Dune> goddamn git changing it during a merge
Avatar
yeah blame the tool Dune 😄
Avatar
[quakenet] <Dune> I do, @LordSk. git pull upstream master committed a ton of cmake changes, and drowned the game.png change
14:12
[quakenet] <Dune> didn't notice
Avatar
I was just kidding
Avatar
[quakenet] <TeeSlayer> does anybody know where I can find the source code for the AI?
Avatar
[quakenet] <Dune> which AI?
Avatar
[quakenet] <heinrich5991> Dune: a tile is 32 "pixels"
16:26
[quakenet] <heinrich5991> or rather an ingame unit
16:26
[quakenet] <heinrich5991> it's the smallest unit ingame
Avatar
[quakenet] <TeeSlayer> @LordSk 🦋 Thanks. Client bot would be cool, but I'll figure something out
17:29
[quakenet] <TeeSlayer> I need to debug zcatch xD
17:35
[quakenet] <TeeSlayer> I think PostTick() in player.cpp should also check whether m_ViewPos really exists in the last else if. I had a segfault there right after the game ending. It probably doesn't happen in Vanilla since I had to modify DeadSpecMode so that people can respawn within a round.
17:36
A retro multiplayer shooter. Contribute to teeworlds/teeworlds development by creating an account on GitHub.
Avatar
[quakenet] <rand> you can trick the client, instead of changing the the color of a client, you change those of everyone else (for zcatch i guess)
20:00
[quakenet] <rand> the drawback is that if somebody touch you, his whole team get your color instead of you getting the team color
20:01
[quakenet] <rand> about dropping client, as far as the protocol is compatible, regardless the client accepting client_info IG, the client can also play with a degraded gametype
20:02
[quakenet] <rand> with a nice message like, "you need the version >1.2 to fully experience this game"
20:03
[quakenet] <rand> because teeworlds will surely get a 1.0 version
Avatar
[quakenet] <TeeSlayer> rand: thanks for the info. sounds nice :)
20:30
[quakenet] <TeeSlayer> about the other issue: the source code in the Teeworlds server is okay, nothing to change there. it was my mistake after all xD
20:32
[quakenet] <Dune> I see heinrich5991, thanks
Avatar
[quakenet] <Paprikamajonesi> Welcome to play new free MMO browser game :) --> https://www.avabur.com/?ref=18774
Avatar
[quakenet] <TeeSlayer> >free >ref
Exported 221 message(s)