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 2020-04-18 00:00:00Z and 2020-04-19 00:00:00Z
Avatar
hey @Learath2, sorry to bother you again with this pesky issue
10:02
https://github.com/teeworlds/teeworlds/pull/2575 breaks @Fudgy's server commands for some reason
This was supposed to fix #2573, but turns out the server doesn't even handle command messages at all. I don't think a fallback to a chat message is desirable here, but it's ...
Avatar
what mod is that?
10:03
Race, worked fine before PR
Avatar
and what command did you try?
10:04
/help, /rank Dune
Avatar
is the source public
Avatar
(actually /help works fine because it's not a registered command, /info does not)
Avatar
I'm guessing he also used pArguments as the whole command string
Avatar
A retro multiplayer shooter. Contribute to axblk/teeworlds development by creating an account on GitHub.
Avatar
why was this even released with the command string being passed as arguments
Avatar
I don't know, ask ryozukki
Avatar
idk what to do tbh, do you want to keep sending the entire string?
10:08
What a pointless feature this whole thing has been, I keep having to rollback things just to keep compatible with 0.7.4
Avatar
I agree, should have kept it simple and not done argument parsing imo
Avatar
I disagree, it should have never been committed without the argument parsing
10:10
I mean, there was only one release with server-side argument parsing, 0.7.4
10:10
commands*
Avatar
0.7.4 had no argument parsing at any side, it just passed the entire chat line as "arguments" to the server, without even stripping the /
Avatar
oh, argument parsing was introduced later? okay
Avatar
yeah, this server also expects the entire chat line in pArgs
Avatar
I'd argue more complexity is more bug-prone
10:11
which makes sense, since that's how 0.7.4 works, right
Avatar
idk what we can do about it tbh, we can just not check arguments at all and send the entire chat line like 0.7.4
Avatar
sounds most reasonable to me
10:13
constantly changing the protocol is irresponsible
Avatar
This is why I don't like working with vanilla, for ddnet we'd have wrapped this up in a version check, or an extended protocol message
Avatar
we can do version checks
10:13
but then you just have stacks of backwards compatibility crap, don't you?
10:14
I mean, sounds rich to me to blame vanilla for that, which is usually light in this aspect
Avatar
it's the only way things can evolve, if the protocol is stagnant, then we can't improve anything
Avatar
A retro multiplayer shooter. Contribute to teeworlds/teeworlds development by creating an account on GitHub.
Avatar
such a shame it was released the way ryozuki first commited it
Avatar
we lack testers a lot
Avatar
do we get the server version any time during the protocol (not including serverinfo)?
Avatar
oh, good question
Avatar
okay fixed that, it also breaks @Trafalgar Law and @fokkonaut's servers, but they are following master, that's expected
Avatar
what do you break?
Avatar
the messages arguments will now include the entire chat line including the / because ryozuki first coded it that way
10:29
you can do a str_skip_to_whitespace on what you receive to get it to the way it's in current master
10:30
For the record, I no longer like this code at all, really regretting even touching it at this point
10:31
If I knew we were sending the entire chat line as "arguments" I would have never touched it to begin with
10:31
(which is my bad, I did indeed miss that)
10:33
@Dune I pushed, you can try it if you want, works on fng2 and on Race. Doesn't work on the servers that were following master
Avatar
better wait for a release before uodating your servers :p
10:41
why is there not simply a dev branch. currently everything is pushed to master.
Avatar
master is the dev branch
Avatar
well, then people should not rely on a work in orogress state.
10:42
progress
Avatar
well they run the two largest servers and ask people to use their own clients for the best experience, they can follow whatever branch they want
Avatar
then you would not really have to care, do you? if people rely on a WIP state.
Avatar
I'm just giving them a heads up that #2575 is breaking
Avatar
master should contain stable releases imo, dev WIP. if people rely on a broken WIP state, it's not your problem.
Avatar
I'll probably end up adding an extended protocol message in ddnet7 to support the sane command message, and the vanilla one will just strip the / and the command
10:47
anyone here familiar with python?
10:48
particularly the import mechanics
Avatar
I think there are a lot of people here who have at least touched that language. just ask the question instead of a meta question :D
Avatar
Fine, I need to import two different versions of network.py in one file, however when I import the first one, that imports datatype.py of one version, when I import the second version, it doesn't even import datatypes because the previous one already added it to the globals
10:55
(which causes a mismatch between network.py and datatype.py)
Avatar
import as might help?
10:56
usually should be a package, if I'm. it mistaken
Avatar
network.py imports * from datatypes, can't do as
Avatar
import individually
Avatar
all folders are implicitly packages past Python 3.3
10:57
I don't want to modify network.py from either version too much
10:57
(so we can just copy and paste it over as vanilla changes)
Avatar
How many servers are running with the 0.7.4 commands right now? I'd make sure to update the Race servers to the new behavior when there is a new release
Avatar
import * is bad practise anyway
10:58
push a vanilla update x)
Avatar
@redix I don't think we are allowed to break compatibility either way, you and Jupstar seem to be the only two, and you both agreed to update, but you'd have to talk with Oy or Dune, not my decision
10:59
@jxsl13 even if I imported specifically, It'd need suffixes to not conflict with the other network.py anyway
11:00
I think I'll have to rename the modules themselves tbh, python caching is just way too agressive
Avatar
I mean having a packagename prefix. I'm not sure how that exactly works.
Avatar
ooh, are those a thing?
Avatar
you know stuff like import numoy as np and then use np.Datatype or np.Function
11:02
numpy
Avatar
hmm, let me give it a try
Avatar
i'm not 100% sure about these mechanics, as I haven't touched python in a long while.
11:04
but should exist
11:04
rand or assa might help
Avatar
[quakenet] rand BOT 2020-04-18 11:10:56Z
do you need to load both or is it possible to import only the relevant one ?
Avatar
I think both
Avatar
[quakenet] rand BOT 2020-04-18 11:12:02Z
in the first case, I agree with jxsl13, import datatypes as old, import datatypes2 as best
11:17
about the second from datatypes import *, I expect the data to replace the old ones (and I observe this with a short example)
Avatar
Sure... Keeping compatibility for the basic gameplay and for major vanilla features is important. But server side chat commands is a small feature only used by mods. Right now most servers are already incompatible to 0.7.4 in this regard and I'd consider the 0.7.4 behavior as a bug.
Avatar
In general I don't see the point in keeping compatibility with all 0.7 minor versions for all features. Teeworlds does not do LTS releases. Compatibility with old versions should only be kept for some time (months not years). However, a working version server is required then
Avatar
I think the idea behind is that any 0.7 client should be able to connect to a 0.7 server and have it work fine
Avatar
Working fine is one thing. Keeping every detail compatible is another
Avatar
@Dune server commands were never used in vanilla. this is entering the territory of being bug-for-bug compatible
Avatar
I mean, yeah, this was a protocol for server modifications
12:24
I'm not sure what you mean by bug-for-bug compatible
Avatar
I mean that the old behavior doesn't look intended, and more like a bug
Avatar
ah, I didn't see it like tht
Avatar
ah
12:25
(bug-for-bug compatibility means that you try to emulate all the bugs an old version has, because people might be using these buggy behaviors)
Avatar
[quakenet] rand BOT 2020-04-18 12:27:59Z
<insert relevant xkcd about heating stuff>
12:28
x1172
Avatar
well, that and what @redix says, that sounds like fair arguments for breaking the 0.7.4 behaviour
12:29
what do you think @Learath2
Avatar
[quakenet] rand BOT 2020-04-18 12:32:02Z
I feel like this kind of change must be annouce in release version (such that g_Config. -> Config()-> for documentation and for modder relying on vanilla updates
12:33
but in dev version (master) this is not mandatory, assuming that dev maintainers know their stuff
Avatar
rand: it's in the 0.7.4 release though
Avatar
[quakenet] rand BOT 2020-04-18 12:38:25Z
implying this was an error not to add this as dev note (or log diff maybe)
Avatar
[quakenet] rand BOT 2020-04-18 12:56:06Z
hm, I search a bit more about the issue, this is pain (small one th), I like the Learath2 PR :]
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 13:41:01Z
boiiiis i finally fixed the editor shortcut on gnome! :D
13:41
ctrl+shift+e seems to be some emoji thingy and it can be turned off to open tw editor yay
13:41
gsettings set org.freedesktop.ibus.panel.emoji hotkey []
13:45
all my ctrl+shift+ are broken :/ not sure if it's gnome
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 13:45:26Z
yes
13:45
its gnome
13:45
gsettings set org.freedesktop.ibus.panel.emoji hotkey []
13:45
saves the day
Avatar
all my ctrl+shift+
13:45
not just the ctrl+shift+e
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 13:45:50Z
eh
13:45
not sure about that
13:46
u on gnome?
13:46
and what happens when u press it?
13:46
nothing
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 13:46:26Z
not even some weird underlined e in a random text field?
13:46
especially when I use ctrl+shift+d :p
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 13:46:50Z
hmm sounds like a different issue
13:46
poor u
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 13:47:20Z
like all ctrl+shift everywhere not just tw?
Avatar
It's okay, that's why I have a dualboot windows, when I want things to simply work :D
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 13:47:30Z
yikes
Avatar
I don't really have ctrl+shift things elsewhere
13:48
I also have to bind mouse3 +fire;+hook because mouse1 + mouse2 is interpreted as mouse3 :(
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 13:48:16Z
wat
13:48
ur system broken af
13:50
i cant believe it im so happy rn i might start mapping again :D
Avatar
it always does that, and it's a fresh install
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 13:50:33Z
yikes
Avatar
usually my linux installs get better over time as I fix linux/gnome bugs/shortcomings
13:51
windows is the opposite, things break
Avatar
I simply avoid gnome and kde nowadays
14:23
bspwm and i3 are simple enough that they don't mess things up and can be easily debugged when things break
14:24
About the 0.7.4 commands thing, idk, I'm inclined to agree with the others that it doesn't break vanilla so it doesn't reaaallly break compatibility
Avatar
i3gaps best
14:44
things dont break when they are too simple
14:44
follows the unix principle
Avatar
[quakenet] ChillerDragon BOT 2020-04-18 15:45:35Z
i like desktops tho
Avatar
there is this brand new invention from 1980 called "directories" or "folders". You should try it.
Avatar
do server side demos work?
18:12
is there even such a thing in 0.7?
Avatar
record IIRC
Avatar
ok, thanks.
18:13
would be neat to record people until they leave the server :0
Avatar
[quakenet] rand BOT 2020-04-18 18:15:07Z
jxsl11: on your way to autorecord suspicious player ?
18:16
(with a server boradcast: * Big Tee is watching you "teeless name" *
18:18
no, just saw a hookbot today.
18:18
would be nice to autorecord from discord and upload to discord to watch later
18:19
optimal would be to convert to video and directly watch on dc
Avatar
I think we had to patch a little bit on ddnet to get serverside demo recording performant enough
Avatar
It worked last time I tried it. However it can just record a demo of the whole world. Would be cool to be able to follow players in such a demo.
Avatar
Uhm, you can with spectator controls, if thats what you mean
19:59
Or do you want to strip the demo like one recorded by a tee?
Avatar
We did per player server-side demo recording for teerace. Performance was okay I think, but it was hardly ever tested with more than 8 players
Avatar
Well with a demo for the whole server, you can create a per player demo from that
Avatar
I think the follow feature does not work in demos
Avatar
Huh, I think it was fine in 0.6 atleast
20:00
Not sure if anything changed about that inbetween
Avatar
Nah it's missing some information I think. At least some effects and things like health+armor are missing in the server demos
20:02
Player following is serverside. In the demoplayer there is no server that can tell you where the tee is
20:03
Actually the client knows it anyway so it should be easy to add
Avatar
@Learath2 you are right. Following a player in a server demo actually works
Avatar
[quakenet] rand BOT 2020-04-18 20:19:17Z
waiting for javascript demo player
Avatar
btw anyone familiar with nodejs modules?
20:28
I'm trying to load a module, but it gives me an error: I enter require("lively.lang") and it tells me Uncaught SyntaxError: Cannot use import statement outside a module in the module I'm importing
Avatar
@heinrich5991 whats lively.lang
Avatar
This is the repository of the lively.next project (https://lively-next.org). - LivelyKernel/lively.next
20:51
@Ryozuki what I'm trying to do: parse JS into a syntax tree, do some manipulation on it, and convert it to JS again
20:52
I found https://github.com/acornjs/acorn for parsing, but it doesn't allow me to turn the syntax tree back into javascript
A small, fast, JavaScript-based JavaScript parser. Contribute to acornjs/acorn development by creating an account on GitHub.
20:52
did u npm install it
Avatar
yes
Avatar
did u npm init
Avatar
yes, loading other modules worked
Avatar
e.g. acorn = require("acorn")
Avatar
no idea then
Avatar
@heinrich5991 do you have a package.json?
Avatar
yes, I do
Avatar
oh wait I know what's wrong, the syntax error is in lively and not your code, right?
21:19
you need polyfills for imports as nodejs doesn't do imports natively yet
21:19
well I think there is some experimental support for it, but I'm not sure
21:19
(lively is the one doing the import)
Avatar
nice, ty
21:24
@Learath2 found another project to do the unparsing: https://github.com/estools/escodegen
ECMAScript code generator. Contribute to estools/escodegen development by creating an account on GitHub.
Avatar
@heinrich5991 this sounds like a very interesting project, what are you doing?
21:25
(also you really should get babel anyway, es6/7 is so much more fun to use)
21:25
((typescript is even more fun to use))
Avatar
@Learath2 js is just a tool here
21:26
trying to deobfuscate some js
Avatar
you are deobfuscating js in js?
Avatar
yes, it seemed like the best parsers for JS are in JS(?)
21:27
so I decided to learn some JS 😛
Avatar
js is a pretty insane language, I migrated most everything I have to ts nowadays
21:28
it is fun to use though, first class functions and objects are a very nice feature in a language
Exported 210 message(s)