08:25 <+bridge> [ddnet] An idea for fixing the weak hook issue would be to make strong hook on by default for everyone, but have a command to swap to weak. No idea if that's even possible or not. 08:48 <+bridge> [ddnet] it is possible, but not too great, will probably cause prediction errors for vanilla clients 09:44 <+bridge> [ddnet] Not sure if we should care about vanilla 0.6 since there is 0.7 10:12 <+bridge> [ddnet] strong hook by default means fixing the bug, after that it's very hard to make people weak 11:25 <+ZillyHuhn> Not sure if we should care about 0.6 since there is 0.7 11:39 <+bridge> [ddnet] @ChillerDragon but that means that we can also not implement 0.7 support, where @Learath2 put alot of work in 11:45 <+bridge> [ddnet] 0.7 needs a whole lot more work and atleast I won't be behind a direct port 11:45 <+bridge> [ddnet] Just porting our spaghetti over is pointless 12:45 <+bridge> [ddnet] <ᶰ°Konͧsti> Quote: "0.7 sux" 12:59 <+bridge> [ddnet] you suck 13:12 <+bridge> [ddnet] @fokkonaut no personal attacks please 13:24 <+bridge> [ddnet] its just annoying, he always trashtalks everything 13:26 <+bridge> [ddnet] no he doesnt trashtalk old ht 13:27 <+bridge> [ddnet] :troll: 13:39 <+bridge> [ddnet] @fokkonaut that's no excuse for personal attacks 13:40 <+bridge> [ddnet] ok 13:45 <+ZillyHuhn> yes u all pls stop attacking 0.7 personally 13:45 <+ZillyHuhn> its good girl 13:46 <+ZillyHuhn> Yea @fokkonaut the bridge thing is a nice idea but if implemented like on kog it might do more harm than good by serving a poor 0.7 expirence and advertising 0.6 clients to omprove it 13:47 <+ZillyHuhn> improve* 13:50 <+bridge> [ddnet] yes 13:50 <+bridge> [ddnet] KoG did it very bad, I offered my help to improve it but qshar rejected it. Then I told him whats wrong (made a list) and still no improvements 13:50 <+ZillyHuhn> same here :D 14:28 <+bridge> [ddnet] <ᶰ°Konͧsti> I just quoted :feelsbadman: 14:28 <+bridge> [ddnet] <ᶰ°Konͧsti> myself :troll: 14:32 <+bridge> [ddnet] Exactly what I intend to do, I'll offer a decent experience on 0.7 and as with all other subpar clients, we'll broadcast that our own client offers the best experience 14:33 <+bridge> [ddnet] If any of you have features in your clients you want supported we can get those in as long as we all decide on the common protocol, but I don't think we'll work on a 0.7 version of ddnet client until we have a 0.7 version of ddnet itself 14:36 <+bridge> [ddnet] If any of you want to put in the work to port the client to 0.7 we could maybe host that 15:34 <+bridge> [ddnet] People are forgetting that for a lot of maps you need weak hook to pass it. 15:41 <+bridge> [ddnet] We already considered this, that's why we won't do anything before taking a look 15:42 <+bridge> [ddnet] If it breaks maps it's probably not happening 16:25 <+bridge> [ddnet] How bad of an idea is it to put `CNetObj_CharacterCore` and `protocol7::CNetObj_CharacterCore` in a union? As long as vanilla doesn't touch the core "it should work(tm)" because of the common initial sequence rule 16:25 <+bridge> [ddnet] Or I can be a little more wasteful memorywise and just allocate an extra core 16:44 <+bridge> [ddnet] @Learath2 it definitely breaks maps. Except if you would turn weak hook on at the necessary parts etc 16:45 <+bridge> [ddnet] @n000b got an example? 16:45 <+bridge> [ddnet] I am bad in map names 16:46 <+bridge> [ddnet] I don't know of any except the 2 Konsti mentioned and those are speefly and shotgunrun, not certain those require weak 16:46 <+bridge> [ddnet] speedfly* 16:47 <+bridge> [ddnet] But there is are a few parts that when you have endless and hold the tee when it goes in arrow you need weak 16:47 <+bridge> [ddnet] C++20 Concepts would be so great for this project 16:47 <+bridge> [ddnet] Arrows =speedups 16:47 <+bridge> [ddnet] ah if you have strong the tee wont move? 16:47 <+bridge> [ddnet] I guess we could make the speeders weaker in those maps 16:47 <+bridge> [ddnet] Yeah or move to fast 16:48 <+bridge> [ddnet] Not sure how it was 16:49 <+bridge> [ddnet] And i know that there is a 3p map that need to hook one tee together with endless and get it through a maze. Not sure what you needed but this was also only possible with weak or strong. I guess strong tho 16:56 <+bridge> [ddnet] @heinrich5991 do you know what's going on in `CCharacter::Snap` The reckoning thing looks like a NOP except for clearing the core 16:57 <+bridge> [ddnet] oh, I see nvm 😄 16:58 <+bridge> [ddnet] 1way stoppers also have different physics with weak hook 16:58 <+bridge> [ddnet] how do stoppers and hook interact? 16:59 <+bridge> [ddnet] if you hook someone against the stopper? 16:59 <+bridge> [ddnet] ^^ I presume 16:59 <+bridge> [ddnet] Hm I guess I'll ditch typesafety and use a template function in `CCharacterCore::Write` 17:00 <+bridge> [ddnet] did the character core change between 0.6 and 0.7? 17:00 <+bridge> [ddnet] perhaps you could just import it? 17:01 <+bridge> [ddnet] Well it didn't change but a cast between those is undefined behaviour 17:01 <+bridge> [ddnet] you could perhaps import the 0.6 one into the 0.7 one 17:02 <+bridge> [ddnet] hm, I'd have to mess with the generation though, do you think it's worth it? 17:02 <+bridge> [ddnet] I was hoping to keep the protocol folder the same 17:03 <+bridge> [ddnet] C++20 has a really nice `std::is_layout_compatible` that would let me do a `std::bitcast` 17:03 <+bridge> [ddnet] alternatively, you could memcpy it over 17:06 <+bridge> [ddnet] Oh I guess that's the same amount of unsafe and it's easier 17:06 <+bridge> [ddnet] I'd guess memcpy between layout compatible types is not UB 17:07 <+bridge> [ddnet] Layout compatibility is introduced in C++20 too iirc 17:07 <+bridge> [ddnet] hm, but de facto you already have to have it 17:07 <+bridge> [ddnet] because if you compile a header from two different source files, the struct layout must be the same 17:07 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721017905357127850/stoppers.mp4 17:07 <+bridge> [ddnet] I mean no sane compiler would lay these out differently so I guess the implementation kinda guarantees it 17:08 <+bridge> [ddnet] Oh wow, that looks all kinds of broken 😄 17:08 <+bridge> [ddnet] thanks @ZombieToad 17:08 <+bridge> [ddnet] Are there any maps abusing this? 17:08 <+bridge> [ddnet] idk ask @ᶰ°Konͧsti 17:09 <+bridge> [ddnet] Why would anyone use stoppers as knockoff speeders anyway? 😄 17:09 <+bridge> [ddnet] @heinrich5991 are you sure the struct layout has to be the same even if the structs have different tags? 17:10 <+bridge> [ddnet] they can also have no tag at all, when they're typedef'd 17:11 <+bridge> [ddnet] it'd be interesting what the C standard has to say about this, but I can't imagine building a spec-compliant compiler trying to break that rule 17:11 <+bridge> [ddnet] i.e. you'd have to solve quite some issues before you're able to generate different struct layouts for structs with identical contents 17:12 <+bridge> [ddnet] I asked the ##C people but they didn't know whether there was a guarantee for this in the standard 17:12 <+bridge> [ddnet] if they don't know… ^^ 17:13 <+bridge> [ddnet] It might be a little too early for the standardese people to be around though 17:13 <+bridge> [ddnet] ehm 17:13 <+bridge> [ddnet] you can put them into a union 17:13 <+bridge> [ddnet] If I put both in a union CIS covers it yeah 17:14 <+bridge> [ddnet] so they have to have the same layout? 17:14 <+bridge> [ddnet] oh, and we also have that the fields are laid out in the order we type them 17:14 <+bridge> [ddnet] Well idk how the compiler could avoid it tbh 17:15 <+bridge> [ddnet] With a straight cast it's a strict aliasing violation though 17:15 <+bridge> [ddnet] yes 17:15 <+bridge> [ddnet] because reinterpreting memory is not allowed 17:15 <+bridge> [ddnet] I don't think any sane compiler would optimize around that though 17:15 <+bridge> [ddnet] it's abused so frequently 17:15 <+bridge> [ddnet] llvm at least does it 17:15 <+bridge> [ddnet] eh, I'll put it in a union just incase 17:15 <+bridge> [ddnet] but special cases "obvious" cases 17:19 <+bridge> [ddnet] so that when you hit a bug concerning that, it's guaranteed that it's complicated 17:23 <+bridge> [ddnet] <ᶰ°Konͧsti> There is a map by Bixes Where one part requires weak 17:23 <+bridge> [ddnet] So stoppers and speeders are affected 17:23 <+bridge> [ddnet] <ᶰ°Konͧsti> Everything is affected 17:23 <+bridge> [ddnet] U 17:24 <+bridge> [ddnet] What would you like actually. Change it or not @ᶰ°Konͧsti 17:25 <+bridge> [ddnet] just change core physics and delete every rank that existed before the change 17:25 <+bridge> [ddnet] ez 17:30 <+bridge> [ddnet] <ᶰ°Konͧsti> dont change anything 17:30 <+bridge> [ddnet] <ᶰ°Konͧsti> Weak is good 18:45 <+Delon> Hi , im trying to run my server in screen with directaly command not step by step , this is my command line 18:45 <+Delon> screen -dmS DDNet-8313 /home/8313/DDNet-Server -f /home/8313/8313.cfg 18:46 <+Delon> But not work.... 18:58 <+bridge> [ddnet] <-snd> try this 18:58 <+bridge> [ddnet] <-snd> ``` 18:58 <+bridge> [ddnet] <-snd> cd /home/8313/ 18:58 <+bridge> [ddnet] <-snd> screen -dmS DDNet-8313 bash -c "./DDNet-Server -f 8313.cfg" 18:58 <+bridge> [ddnet] <-snd> ``` 18:59 <+bridge> [ddnet] <ᶰ°Konͧsti> Red Avenue is the map where one Part requires weak 19:06 <+Delon> I know with `cd /home/8313` work fine but i didnt want to cd to folder as i said need to run directly 19:07 <+Delon> @deen @heinrich5991 @Learath2 any suggestion ? 19:07 <+bridge> [ddnet] <ᶰ°Konͧsti> Shotgunrun is used on a lot of maps especially oldschool as part or as a trick in speedruns for example LowPossibility 3.1, used it on Ray 2 and theres much more. 19:07 <+bridge> [ddnet] <ᶰ°Konͧsti> Pirofly is used in some maps to skip kills/blocker/stopper as a cheat. Doubt u can figure out which is Which. 19:07 <+bridge> [ddnet] <ᶰ°Konͧsti> Speedfly is connected to weak bouncing physics and ofc is used on like every map. 19:07 <+bridge> [ddnet] <ᶰ°Konͧsti> There isnt a way to fix the whole physic without breaking a lot. 19:07 <+bridge> [ddnet] <ᶰ°Konͧsti> The only way might be to give strong hook to everyone but an indicator to see who u have the real strong on for example through hookcolor if u hook a tee it shows wheather u have real strong on the tee you are hooking or not 19:08 <+bridge> [ddnet] <ᶰ°Konͧsti> Wouldnt even be annoying cuz people already hook each other to figure out who have strong 19:11 <+bridge> [ddnet] <ᶰ°Konͧsti> Requires latest DDNet then ofc. 19:11 <+bridge> [ddnet] <ᶰ°Konͧsti> Maybe a command too like /strong to see if u have strong to this tee 19:37 <+Delon> Ok i try with -S instead -dmS and terminal show this error `could not open 'maps/Kobra 4.map'` 19:38 <+Delon> but in 8313.cfg sv_map Stronghold 19:39 <+Delon> Seem couldnt run server by 8313.cfg 19:59 <+bridge> [ddnet] can you run it without screen? 20:17 <+Delon> Seems from storag.cfg if current map in data/maps work fine but in maps folder in ddnet directory not work 20:32 <+bridge> [ddnet] @heinrich5991 do you know of a pretty way to assign a subclass to a superclass? 20:33 <+bridge> [ddnet] no the other way around 20:42 <+bridge> [ddnet] wdym? 20:42 <+bridge> [ddnet] pointers? 21:05 <+ZillyHuhn> Delon any reason you do not want to cd into there? Btw you can always put the maps in ~/.teeworlds/maps/ and they are loaded without configuring storage.cfg 21:09 <+ZillyHuhn> Oh wait or is the issue that the config is not loaded at all? Hmm any errors about loading 8313.cfg in the log? Try fiddeling around without screen to see if you can see why it is not loading the correct config. 21:11 <+bridge> [ddnet] @heinrich5991 I was thinking of assigning a `CNetObj_CharacterCore` to a `CNetObj_Character`. Decided against it 21:16 <+bridge> [ddnet] hi 21:16 <+bridge> [ddnet] wdym 21:16 <+bridge> [ddnet] 1> [CMake] CMake Error at C:\Users\cen940k\Source\Repos\xpanic\CMakeLists.txt:1682 (add_executable): 21:16 <+bridge> [ddnet] 1> [CMake] No SOURCES given to target: versionsrv 21:16 <+bridge> [ddnet] 1> [CMake] 21:16 <+bridge> [ddnet] 1> [CMake] 21:16 <+bridge> [ddnet] 1> [CMake] CMake Error at C:\Users\cen940k\Source\Repos\xpanic\CMakeLists.txt:1650 (add_executable): 21:16 <+bridge> [ddnet] 1> [CMake] No SOURCES given to target: teeworlds_srv 21:16 <+bridge> [ddnet] what does it means* 21:16 <+bridge> [ddnet] it's visual studio 209 21:16 <+bridge> [ddnet] it's visual studio 2019 21:16 <+bridge> [ddnet] Means you are probably doing something very wrong 21:17 <+bridge> [ddnet] XD 21:17 <+bridge> [ddnet] but my friend can compile this repository very nice 21:17 <+bridge> [ddnet] i just clone it by git 21:17 <+bridge> [ddnet] and open 21:17 <+bridge> [ddnet] not by git, sorry 21:17 <+bridge> [ddnet] by tool in msvc to synchonization of local repository and remote 21:23 <+bridge> [ddnet] @fokkonaut do you have spec/pause working in 0.7? 21:24 <+bridge> [ddnet] sure 21:24 <+bridge> [ddnet] Do you happen to know off the top of your head why the old way doesn't work? 21:24 <+bridge> [ddnet] ? 21:25 <+bridge> [ddnet] Also `((Server()->IsSixup(i) == !!(Flags & CHAT_SIXUP)) || (!Server()->IsSixup(i) == !!(Flags & CHAT_SIX)))` really looks like it should simplify, but it doesn't 21:25 <+bridge> [ddnet] Whats that 21:25 <+bridge> [ddnet] Well as is spec doesn't work, if I spec I just cant move 21:25 <+bridge> [ddnet] That's to control where `CHAT_ALL` messages go 21:25 <+bridge> [ddnet] Whats wrong with your pause? 21:26 <+bridge> [ddnet] you may not handle it the way for 0.6 vanilla clients 21:26 <+bridge> [ddnet] Yeah, how any idea how it's supposed to be handled? 21:26 <+bridge> [ddnet] I did it for ddnet7 21:26 <+bridge> [ddnet] Oh, I'll take it from there 21:26 <+bridge> [ddnet] sure 21:27 <+bridge> [ddnet] And please, for 0.7 clients send the PLAYERFLAG_DEAD for players who are paused 21:27 <+bridge> [ddnet] I made it that way in ddnet7, because in that way you can see who is spectating you 21:27 <+bridge> [ddnet] there is a flag for that too 21:29 <+bridge> [ddnet] For a paused/specd client, spectator mode is always `SPEC_FREEVIEW` right? 21:30 <+bridge> [ddnet] (you can take all that from ddnet7 btw) 21:30 <+bridge> [ddnet] what do you mean spectator mode always freeview? 21:31 <+bridge> [ddnet] It can also go to the other specmodes, aswell as the players of course 21:31 <+bridge> [ddnet] I can't really take it all, I can't just break 0.6 😄 21:31 <+bridge> [ddnet] You dont have to? 21:32 <+bridge> [ddnet] SpecMode doesn't really exist in 0.6 21:32 <+bridge> [ddnet] it's hacked together with the SpectatorID 21:36 <+bridge> [ddnet] Ah, need to send a teamchange in 0.7 21:38 <+bridge> [ddnet] hm timakro doesn't 21:43 <+bridge> [ddnet] Ah I see where he hid it 21:59 <+bridge> [ddnet] Great I have a crash that's impossible to diagnose 22:00 <+bridge> [ddnet] Run it with a debugger, it's gone. Allow core dumps it just freezes. Asan makes it disappear 22:03 <+bridge> [ddnet] Ah, I know where it is. @heinrich5991 is it possible for real extended netobjs to be <= 0? 22:03 <+bridge> [ddnet] <0* 22:04 <+bridge> [ddnet] Actually I'll just add a SnapNewItemRaw to be safe 22:05 <+bridge> [ddnet] vanilla teeworlds has some confusion with type ids > 32768 22:05 <+bridge> [ddnet] hm 22:05 <+bridge> [ddnet] but ddnet fixed it 22:05 <+bridge> [ddnet] (only for packing, not unpacking) 22:05 <+bridge> [ddnet] should be irrelevant for you 22:05 <+bridge> [ddnet] When I'm sending a netobj I was thinking of using negative types to indicate that type shouldn't be messed with 22:06 <+bridge> [ddnet] but you have a 22:06 <+bridge> [ddnet] ```c++ 22:06 <+bridge> [ddnet] if(!(Type >= 0 && Type <= 0xffff)) 22:06 <+bridge> [ddnet] g_UuidManager.GetUuid(Type); 22:06 <+bridge> [ddnet] ``` 22:06 <+bridge> [ddnet] Which means my negative types go to the uuid manager which doesn't take too kindly to it 22:07 <+bridge> [ddnet] you could make that Type > 0xffff 22:08 <+bridge> [ddnet] all these low level protocol details being decided by the highest level we have is really making me sad 😦 22:10 <+bridge> [ddnet] sorry 22:10 <+bridge> [ddnet] but what if this 22:10 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721094128196255744/unknown.png 22:13 <+bridge> [ddnet] you are missing the other folder 22:15 <+bridge> [ddnet] here is other 22:15 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721095238470467664/unknown.png 22:15 <+bridge> [ddnet] but there is really no sdl 22:15 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721095295810797668/unknown.png 22:16 <+bridge> [ddnet] whatafak i just downloaded clear 0.7 zip 22:16 <+bridge> [ddnet] and he says 22:16 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721095730277908642/unknown.png 22:20 <+bridge> [ddnet] help me :( 22:20 <+bridge> [ddnet] how does it keep getting worse? 22:21 <+bridge> [ddnet] You need to use the Visual studio c++ console or run vcvarsall.bat in your cmd to get the compiler in your PATH 22:21 <+bridge> [ddnet] @heinrich5991 Could type -9999 have something to do with what you mentioned before? 22:22 <+bridge> [ddnet] I seem to receive snaps with objects of Type -9999 but I don't send them 22:22 <+bridge> [ddnet] thanks @Learath2 22:25 <+bridge> [ddnet] yea boi i forgot about native tools 22:28 <+bridge> [ddnet] @Learath2 type -9999 is unlikely 22:29 <+bridge> [ddnet] ``` 22:29 <+bridge> [ddnet] [2020-06-12 23:28:07][delta]: num=0 total=4 type 12 22:29 <+bridge> [ddnet] [2020-06-12 23:28:07][delta]: num=1 total=4 type 30049 22:29 <+bridge> [ddnet] [2020-06-12 23:28:07][delta]: num=2 total=4 type 11 22:29 <+bridge> [ddnet] [2020-06-12 23:28:07][delta]: num=3 total=4 type -9999 22:29 <+bridge> [ddnet] [2020-06-12 23:28:07][client]: delta unpack failed!``` 22:35 <+bridge> [ddnet] it seems to choke on a `NETMSGTYPE_SV_VOTEOPTIONLISTADD` tf? 22:36 <+bridge> [ddnet] this is quickly becoming boring to work on 22:38 <+bridge> [ddnet] ah it's spectatorinfo 22:39 <+bridge> [ddnet] I really should have checked whether the messages are compatible between the protocols in the python script 22:40 <+bridge> [ddnet] pf this is just impossible to debug by hand 22:42 <+bridge> [ddnet] brilliant, I'm sending specinfo about a non existent client 15 22:43 <+bridge> [ddnet] `void CPlayer::FakeSnap()` 😦 22:59 <+bridge> [ddnet] :( 22:59 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721106508980420608/unknown.png 23:01 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721106902678896650/unknown.png 23:01 <+bridge> [ddnet] if you need translate i'll do it 23:01 <+bridge> [ddnet] i'm x65 system 23:01 <+bridge> [ddnet] ya ne ponimayu 23:01 <+bridge> [ddnet] i'm x64 system 23:01 <+bridge> [ddnet] XD 23:01 <+bridge> [ddnet] thats ur problem 23:01 <+bridge> [ddnet] translation pozhalyusta 23:02 <+bridge> [ddnet] > translation pozhalyusta 23:02 <+bridge> [ddnet] @Learath2 ok 23:02 <+bridge> [ddnet] > thats ur problem 23:02 <+bridge> [ddnet] @ZombieToad wdym 23:02 <+bridge> [ddnet] teeworlds doesnt support x65 23:02 <+bridge> [ddnet] > teeworlds doesnt support x65 23:02 <+bridge> [ddnet] @ZombieToad missclick 23:02 <+bridge> [ddnet] x64 23:02 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721107157998633040/unknown.png 23:03 <+bridge> [ddnet] the computer type of the module "64" conflicts with the type of the target computer x86 23:03 <+bridge> [ddnet] @Learath2 23:03 <+bridge> [ddnet] wtf 23:03 <+bridge> [ddnet] do a `bam -c all` 23:03 <+bridge> [ddnet] then just a `bam configure` I think 23:03 <+bridge> [ddnet] it's been a while since I used bam 23:03 <+bridge> [ddnet] I'm more comfortable with cmake 23:04 <+bridge> [ddnet] i tried with cmake 23:04 <+bridge> [ddnet] but i have some problems 23:04 <+bridge> [ddnet] show me the configure with bam, if that doesn't work out we can always go for cmake 23:04 <+bridge> [ddnet] maybe i just nned to delete configurre? 23:04 <+bridge> [ddnet] maybe i just nned to delete configure file? 23:04 <+bridge> [ddnet] and reconfigure 23:05 <+bridge> [ddnet] yeah reconfigure and show me what the output of the configuration is 23:05 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721107895923638272/unknown.png 23:05 <+bridge> [ddnet] you mean this? 23:05 <+bridge> [ddnet] Yeah, absolutely no idea why your linker wants to link as 32bit 23:05 <+bridge> [ddnet] ok maybe thats because i started with native tools x86 23:06 <+bridge> [ddnet] and then continued at x64 23:06 <+bridge> [ddnet] sorry 23:06 <+bridge> [ddnet] lol 23:06 <+bridge> [ddnet] lol 23:06 <+bridge> [ddnet] that's not a reason 23:06 <+bridge> [ddnet] the same 23:06 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721108139360911400/unknown.png 23:06 <+bridge> [ddnet] `bam -c all` to clean 23:06 <+bridge> [ddnet] you didnt delete build files 23:06 <+bridge> [ddnet] ??? 23:06 <+bridge> [ddnet] The PECOFF files have their target architecture embedded in them iirc 23:07 <+bridge> [ddnet] pecoff? 23:07 <+bridge> [ddnet] what is it 23:07 <+bridge> [ddnet] the object file format of windows 23:07 <+bridge> [ddnet] hm ok 23:07 <+bridge> [ddnet] all is ok? 23:07 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721108521168666817/unknown.png 23:08 <+bridge> [ddnet] try building now I guess 23:08 <+bridge> [ddnet] but that seems to have nuked the sdl folder you found 😄 23:08 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721108740547280947/unknown.png 23:08 <+bridge> [ddnet] it's clear sources 23:08 <+bridge> [ddnet] Yeah no idea, I don't use bam ever anymore 23:09 <+bridge> [ddnet] i just downloaded from github by git clone recurse submodule 23:09 <+bridge> [ddnet] ok then i'll try by cmake 23:09 <+bridge> [ddnet] do you have cmake in the PATH? 23:09 <+bridge> [ddnet] what is PATH? 23:09 <+bridge> [ddnet] in that console if you type `cmake --version` does it work? 23:09 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721109034186440734/unknown.png 23:10 <+bridge> [ddnet] Oh great you can just use cmake on the console 23:10 <+bridge> [ddnet] how to 23:10 <+bridge> [ddnet] hm wait my batch is a little rusty 23:11 <+bridge> [ddnet] what is batch? 23:11 <+bridge> [ddnet] windows' console 23:11 <+bridge> [ddnet] ah ok 23:11 <+bridge> [ddnet] okay do a `rd build` 23:11 <+bridge> [ddnet] how it can be rusty lol 23:11 <+bridge> [ddnet] folder not empty? 23:11 <+bridge> [ddnet] folder not empty 23:11 <+bridge> [ddnet] `rd /s build`? 23:12 <+bridge> [ddnet] rusty in this context means I haven't used it in a while and forgotten some of the commands 23:12 <+bridge> [ddnet] if that worked, do a `mkdir build` and `cd build` 23:12 <+bridge> [ddnet] `build are you sure yes or no 23:12 <+bridge> [ddnet] `build are you sure yes or no` 23:12 <+bridge> [ddnet] yes? 23:12 <+bridge> [ddnet] yes 23:12 <+bridge> [ddnet] cannot find filer 23:12 <+bridge> [ddnet] cannot find file 23:12 <+bridge> [ddnet] what a meme 23:12 <+bridge> [ddnet] just delete the folder 23:13 <+bridge> [ddnet] ajhahahahahah 23:13 <+bridge> [ddnet] Gotta love cmd 23:13 <+bridge> [ddnet] wdym 23:13 <+bridge> [ddnet] The DOS experience 23:13 <+bridge> [ddnet] stop hm 23:13 <+bridge> [ddnet] i'm stupid 23:13 <+bridge> [ddnet] @Arseniy Zarche do no edit messages in this channel, ppl on IRC will see them multiple times 23:13 <+bridge> [ddnet] randomly got .bam folder 23:13 <+bridge> [ddnet] sorry 23:13 <+bridge> [ddnet] doesn't matter 23:13 <+bridge> [ddnet] @Soreu ok thanks 23:13 <+bridge> [ddnet] and sorry 23:13 <+bridge> [ddnet] just need to delete the build folder and create a new one 23:14 <+bridge> [ddnet] ok 23:14 <+bridge> [ddnet] done 23:14 <+bridge> [ddnet] done rd build 23:14 <+bridge> [ddnet] then cd into build 23:14 <+bridge> [ddnet] it says nothing 23:14 <+bridge> [ddnet] wtf cannot find 23:14 <+bridge> [ddnet] wtf 23:14 <+bridge> [ddnet] well you just deleted it 😄 23:15 <+bridge> [ddnet] rd is remove directory 23:15 <+bridge> [ddnet] ah 23:15 <+bridge> [ddnet] sorry 23:15 <+bridge> [ddnet] xD 23:15 <+bridge> [ddnet] 😛 23:15 <+bridge> [ddnet] that was a joke? 23:15 <+bridge> [ddnet] it's a trap 23:15 <+bridge> [ddnet] no I was trying to delete it on the console but it didn't want to delete for some reason 23:15 <+bridge> [ddnet] ah xd 23:15 <+bridge> [ddnet] ok then 23:15 <+bridge> [ddnet] i create it again? 23:15 <+bridge> [ddnet] yeah 23:15 <+bridge> [ddnet] then cd into it 23:15 <+bridge> [ddnet] don 23:15 <+bridge> [ddnet] e 23:15 <+bridge> [ddnet] cd'ed 23:15 <+bridge> [ddnet] mkdir build? 23:16 <+bridge> [ddnet] ah 23:16 <+bridge> [ddnet] mkdir is make directory? 23:16 <+bridge> [ddnet] yes 23:16 <+bridge> [ddnet] ok 23:16 <+bridge> [ddnet] now i'm at build 23:16 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721110704266149958/unknown.png 23:16 <+bridge> [ddnet] what i need to do? 23:16 <+bridge> [ddnet] ok try `nmake` 23:16 <+bridge> [ddnet] lets see if nmake is available 23:16 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721110765074907256/unknown.png 23:16 <+bridge> [ddnet] if not we'll use the visual studio generator 23:16 <+bridge> [ddnet] great we can use nmake 23:16 <+bridge> [ddnet] ? 23:17 <+bridge> [ddnet] he said fatal error 23:17 <+bridge> [ddnet] how we can use nmake 23:17 <+bridge> [ddnet] :D 23:17 <+bridge> [ddnet] do `cmake -G "Nmake Makefiles" ..` 23:17 <+bridge> [ddnet] he listed generators 23:17 <+bridge> [ddnet] huh no nmake generator? 23:17 <+bridge> [ddnet] what are the options? 23:18 <+bridge> [ddnet] i think i need type "Nmake Makefiles" without "" 23:18 <+bridge> [ddnet] nah that shouldn't change anything 23:18 <+bridge> [ddnet] Actually you need the " beacause there is a space in the middle 23:18 <+bridge> [ddnet] there is 23:18 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721111186174771260/unknown.png 23:18 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721111210279567400/unknown.png 23:18 <+bridge> [ddnet] ah it's NMake 23:18 <+bridge> [ddnet] not Nmake 23:18 <+bridge> [ddnet] ah 23:18 <+bridge> [ddnet] ok 23:18 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721111325316612146/unknown.png 23:19 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721111369134505985/unknown.png 23:19 <+bridge> [ddnet] you are forgetting the .. at the end 23:19 <+bridge> [ddnet] yes 23:19 <+bridge> [ddnet] sorry 23:19 <+bridge> [ddnet] oh rly 23:19 <+bridge> [ddnet] something is builded 23:19 <+bridge> [ddnet] Show me the output 23:20 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721111635216826378/unknown.png 23:20 <+bridge> [ddnet] Huh, I'm surprised, it didn't break 23:20 <+bridge> [ddnet] yep me too 23:20 <+bridge> [ddnet] xD 23:20 <+bridge> [ddnet] I think you just need to do `nmake` now 23:20 <+bridge> [ddnet] ok i'll try 23:21 <+bridge> [ddnet] OH FUCK IT WORKS 23:21 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721111891186810880/unknown.png 23:21 <+bridge> [ddnet] ohhh 23:21 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721112056589189220/unknown.png 23:21 <+bridge> [ddnet] man 23:21 <+bridge> [ddnet] When you want to build again you just need to do `nmake`, if things seem to break, just delete the build folder and do cmake again 23:21 <+bridge> [ddnet] you are wizard like heinrich5991 23:22 <+bridge> [ddnet] I didn't know nmake did the pretty colors like gmake 23:22 <+bridge> [ddnet] what do yuo mean 23:22 <+bridge> [ddnet] https://cdn.discordapp.com/attachments/293493549758939136/721112253033873409/unknown.png 23:22 <+bridge> [ddnet] just cmake ?? 23:22 <+bridge> [ddnet] or nmake? 23:22 <+bridge> [ddnet] I mean if things don't seem to work 23:23 <+bridge> [ddnet] ok 23:23 <+bridge> [ddnet] then i 'rd build' 23:23 <+bridge> [ddnet] Just `nmake` is enough to build again 23:23 <+bridge> [ddnet] ok i'll try rn 23:23 <+bridge> [ddnet] but if things break, just delete the folder and do `cmake -G "Nmake Makefiles" ..` again 23:23 <+bridge> [ddnet] ah 23:23 <+bridge> [ddnet] (inside the new build folder) 23:23 <+bridge> [ddnet] cmake -G "NMake Makefiles" .. 23:23 <+bridge> [ddnet] i need to remember this 23:24 <+bridge> [ddnet] how to delete not empty folder by the cmd? 23:24 <+bridge> [ddnet] Basically, cmake generates instructions for nmake on how to build teeworlds, nmake does the actual building 23:24 <+bridge> [ddnet] Ok, thank you very much for explaining 23:24 <+bridge> [ddnet] `rmdir /S build` I think 23:25 <+bridge> [ddnet] make that `rmdir /Q /S build` so it doesn't ask you yes or no 23:25 <+bridge> [ddnet] what is /S? 23:25 <+bridge> [ddnet] make that `rd /Q /S build` that's shorter 23:25 <+bridge> [ddnet] md is like mkdir? 23:25 <+bridge> [ddnet] `/S Removes all directories and files in the specified directory in addition to the directory itself. It is used to remove a directory tree.` 23:26 <+bridge> [ddnet] oh thanks 23:26 <+bridge> [ddnet] Idk if there is a shortcut for mkdir 23:26 <+bridge> [ddnet] yep there is 23:26 <+bridge> [ddnet] btw, if you don't know what a command does and what options it has, you can always do `command /?` in cmd 23:26 <+bridge> [ddnet] like `rmdir /?` 23:28 <+bridge> [ddnet] oh 23:28 <+bridge> [ddnet] thanks 23:28 <+bridge> [ddnet] i want to ask you very much about git 23:28 <+bridge> [ddnet] may i? 23:28 <+bridge> [ddnet] Sure 23:28 <+bridge> [ddnet] thanks 23:28 <+bridge> [ddnet] then 23:28 <+bridge> [ddnet] now i use git for cooperate with visual studio to work there 23:29 <+bridge> [ddnet] to download actual version of repos and upload my commits to github 23:29 <+bridge> [ddnet] but 23:29 <+bridge> [ddnet] can i use it without visual studio? 23:29 <+bridge> [ddnet] i mean see the branches, tags, upload my commits and download actual version 23:29 <+bridge> [ddnet] without visual studio 23:29 <+bridge> [ddnet] and do i really need it 23:30 <+bridge> [ddnet] well you don't need visual studio 23:30 <+bridge> [ddnet] but your compiler is in visual studio, if you want to remove visual studio you'll need a new compiler 23:30 <+bridge> [ddnet] like mingw 23:30 <+bridge> [ddnet] i mean maybe it's comfortable to use visual studio as editor of code and downloader\uploader reposs 23:31 <+bridge> [ddnet] how do you upload commits to github? 23:31 <+bridge> [ddnet] by visual studio? 23:31 <+bridge> [ddnet] I use git on the command line 23:31 <+bridge> [ddnet] git bash? 23:31 <+bridge> [ddnet] don't you play teeworlds on command line? xD 23:31 <+bridge> [ddnet] I'm on macOS so I'm just using bash, but back when I was on windows yes git bash 23:32 <+bridge> [ddnet] git on command line takes a bit to learn but it's much more powerful then using a gui for it 23:32 <+bridge> [ddnet] hmm 23:32 <+bridge> [ddnet] where can i learn git cmd? 23:33 <+bridge> [ddnet] https://git-scm.com/book/en/v2 23:33 <+bridge> [ddnet] The first 3 chapters are enough 23:33 <+bridge> [ddnet] The first one is just installation so 2 and 3 are all you need to read 23:34 <+bridge> [ddnet] and you can read 7 later if you want to learn some fancy git tricks 23:34 <+bridge> [ddnet] hmmmm 23:34 <+bridge> [ddnet] thank you 23:34 <+bridge> [ddnet] i very like this because of russian version 23:34 <+bridge> [ddnet] \o/ enjoy 23:35 <+bridge> [ddnet] english is very tiring to read for me 23:35 <+bridge> [ddnet] and write as you see xD 23:35 <+bridge> [ddnet] sorry for my grammar 23:35 <+bridge> [ddnet] Np at all, everyone was a beginner some time 23:35 <+bridge> [ddnet] thank you very much 23:36 <+bridge> [ddnet] i'll try to come better 23:36 <+bridge> [ddnet] Just ask here if you have any questions 23:47 <+bridge> [ddnet] @Learath2 i read it rn 23:47 <+bridge> [ddnet] and it looks like "999 reasons why git is best" 23:47 <+bridge> [ddnet] :D 23:49 <+bridge> [ddnet] @snail can you nameban SP | Someone 23:49 <+bridge> [ddnet] pls 23:53 <+bridge> [ddnet] trade for Konsti nameban 23:54 <+bridge> [ddnet] no 23:55 <+bridge> [ddnet] konsti is namebaned?