Time Nick Message 01:35 erle HuguesRoss rubenwardy i would suggest to use the tool “semgrep” to find specific API usage. entirely unlike grep, it understands language structure. here is an example where I used it to find code that allows dupings: https://mister-muffin.de/p/YbNr.txt 01:41 rubenwardy That's cool 01:41 rubenwardy Also, lots of code duplication 02:00 erle well, it's not like i wrote that code 02:00 erle i just needed a target where it becomes obvious that the general structure is the same 02:00 erle and the bug is the same 02:00 erle but the individual code is so different (look at the envil or jukebox for example) 02:03 erle the dupe is the same in all cases: digging the node results in the air node having the old metadata even after dropping the item 02:03 erle plucking the duplicated inventory literally out of thin air is left as a riddle for the reader, but i know at least three methods (and can provide the CSM, if you are interested) 02:04 erle three motheds without using a CSM i mean ;> 02:04 erle my goal is to figure out how to generalize such patterns well enough so that they are not only useful for a single game or mod but the entirety of contentdb 02:05 erle to exclude entire classes of bugs 02:05 erle but i have no idea how general bugs can be, except “using the API in an incorrect/deprecated way” 08:45 Baytuch Good evening 12:55 ROllerozxa is there any reason as to why the GUI buttons have gradients while the rest of the UI is flat? they look kinda off and out of place IMO 12:55 sfan5 it's the irrlicht default 12:55 sfan5 that's all 12:57 erle if you redesign it please don't do the absolute bullshit that is flat design or material design 12:57 erle buttons HAVE to be recognizable as buttons! 13:52 ROllerozxa yeah so the reason I'm asking is I've been using Minetest with a custom patch for some time that removes the button gradient and I personally find non-gradient buttons to look better and generally fit in more (https://grejer.voxelmanip.se/uploads/Screenshot_20220415_145251.png) 13:53 ROllerozxa erle: do you think it looks like bullshit flat material design or does it still look like a button? 13:54 erle ROllerozxa i would have to compare it to other UI elements. 13:55 erle the problem with the bullshit designs is that input fields, buttons, links etc. can not be distinguished 13:55 erle whereas in non-bullshit designs you have visual cues: input fields have an inset border, buttons have an outset border, stuff like that 13:55 erle ROllerozxa can you make the border shadow more prominent and also show a bunch of other elements? 13:57 erle btw, i use “bullshit” not as a swear word but as “stuff that is devoid of meaning” 13:57 erle http://www2.csudh.edu/ccauthen/576f12/frankfurt__harry_-_on_bullshit.pdf 13:57 erle humbug, drivel, quackery etc. 13:58 erle a good UI makes it possible to infer meaning from the visual cues, and good UX generally does not leave the user guessing 13:59 erle so, ROllerozxa have a screenshot of a test formspec that shows all elements? if you show the normal button, disabled button, pressed button next to it, i can tell if it is bullshit ;-) 13:59 erle active tab, inactive tab etc. 14:08 ROllerozxa https://grejer.voxelmanip.se/uploads/Screenshot_20220415_160148.png here's with /test_formspec, left is with gradients and right is without. minetest doesn't have any disabled button elements and has no real distinction in active/inactive tab colouring 14:09 ROllerozxa so the only thing that has changed is that gradients from buttons are gone. the rest stays the same, more or less 14:09 ROllerozxa (I don't know what happened to the clipping of tabs in the screenshot, most likely an unrelated 5.5.0 vs. 5.6.0-dev change) 14:21 erle ROllerozxa so what is the cue for buttons now? 14:22 erle before: gradient = clickable 14:22 erle even if people can't articulate it and even if it is ugly, such stuff becomes ingrained (you have 10 years of history for it now) 14:23 erle ROllerozxa it kinda pains me saying it, because the right looks less ugly, but the gradients being gone makes it totally confusing for me in terms of how to know what is clickable. 14:23 erle just compare it to the way mcl2 does buttons and you see 14:24 erle or how random gtk themes do it 14:25 MTDiscord erle, why can't you just try it to see if it is clickable? Id rather have a better-looking ui. If some recent formspecs I've made, buttons are image buttons, that have no background. You get a clue from their position that they are clicable 14:26 MTDiscord And also, for a formspec replacement, all types of ui styles should be possible 14:26 MTDiscord Including gradient, but also flat 14:29 ROllerozxa erle: yeah fair enough, people would be used to buttons being gradients and if the default button gradient suddenly disappeared engine-wide then it would probably be jarring to some 14:32 ROllerozxa whether it is ambigious whether something is a button I'm not too sure on that. like, input fields are and have been brighter, dropdowns are and have been darker, and tabs are just flat like they've been prior 14:35 erle “why can't you just try it to see if it is clickable?“ … WHAT? 14:35 erle are you advocating mystery meat navigation? 14:36 erle ROllerozxa all the good UIs i have seen that get rid of the gradient replace it with something like the inset/outset stuff. think: windows 98 interface HIG basically. 14:36 erle ROllerozxa the flat tabs actually keep confusing me, even after years 14:37 erle MisterE buttons that are entirely images can be really confusing due to the only cue, the gradient, going missing. what do you mean with “cue from their position”? 14:38 erle ROllerozxa please show me the code for the changed buttons 14:40 ROllerozxa https://github.com/rollerozxa/rollertest/commit/67413de5cf19014d9297f94915f2e3101f83bea6 14:41 MTDiscord Cue from their position: a row of icons at the bottom that only make sense as buttons 14:41 MTDiscord And yes I am advocating that, I think it looks great :P 14:42 MTDiscord And I think its easy enough to figure out flat designs, maybe its because I have groen up with them 14:42 erle look, proper UX is hard. i once made a web page for a game where the download link was right at the top. and people kept asking about it, until i made that part of the page bright pink. 14:44 erle MisterE there are decades of research on the importance of cues and how good usability does not always “look” good. and there are countless people on the internet who “improve” a design just to satisfy some æsthetic craving and it totally makes sense to them. as i said before: good UX does not leave users guessing. 14:45 MTDiscord Games don't need usability as much as workflow apps to 14:45 erle MisterE is the letter A here clickable or not? https://mspoweruser.com/wp-content/uploads/2017/09/can-i-click.png 14:45 MTDiscord Yes 14:46 MTDiscord I would guess yes and not be too disappointed if not 14:46 erle lol 14:46 erle that's the uncertainty 14:46 MTDiscord and in that context I wouldn't care 14:47 MTDiscord https://cdn.discordapp.com/attachments/747163566800633906/964537392973381672/unknown.png 14:47 erle the nielsen group has done an eyetracking study on flat design to figure out if it makes stuff better https://www.nngroup.com/articles/flat-ui-less-attention-cause-uncertainty/ 14:47 MTDiscord here is my example^ 14:47 erle TL;DR: users are 22% slower 14:47 MTDiscord for games, doesnt matter 14:48 erle MisterE nice dialogue, but … are all the graphics clickable? 14:48 MTDiscord and once you learn a ui, you remember what is clickable and what itsnt 14:48 erle like what happens when i click on the worm 14:48 MTDiscord only the bottom 3 are 14:48 erle WHAT 14:48 erle this is disgusting 14:48 MTDiscord the worm is in a scrollbar 14:48 MTDiscord its a list of achievements 14:48 erle there is absolutely *no* indicator that those bottom 3 things are not just decorative elements 14:49 erle in fact, the same golden cup is there and in the top thing … clickable and not clickable, same symbol???! 14:49 MTDiscord except... that its a simple dialouge, and they are clickable. Users will experiment with it and discover that they are clickable and otehrs not. And because its so simple, it works 14:50 MTDiscord now, if you have a cad program, its absolutely essential to know what is clickable and what isnt with obvious buttons 14:50 erle please don't take this as an insult: you should learn interface design 14:50 MTDiscord because the ui is so complicated 14:50 erle uh no 14:50 erle it's always important 14:50 MTDiscord you should accept that others have different ui tastes 14:51 erle i don't have to. there is always people who think it is a matter of taste or fashion. it is a matter of science. 14:51 erle some UI conventions work massively better than others, the nielsen group has made a business out of that actually 14:52 MTDiscord no, its not. For important work applications, yes it is. For entertainment, you can spare some time to learn the interface, especially if it is simple 14:52 erle there are actually UI elements that are so bad usability-wise that you know people put in minimum effort or suck at prioritizing information. the hamburger button for example. 14:53 erle if you see a hamburger button, you know someone did not put in effort. they just stuffed everything in there that they did not want to think about. 14:53 erle and for entertainment, it is especially important that the interface works. otherwise it breaks the immersion. 14:53 erle and that conventions are not broken 14:53 MTDiscord I like hambuger buttons... I have seen them everywhwere so I instantly know what they are... a menu with settings 14:54 erle oh i am not saying that they are unusable. but they don't work as well as the alternatives AND the alternatives take time. 14:54 erle to design 14:54 MTDiscord ... for the older generation, yes 14:54 erle i think you misunderstand. this is not a story of taste or generations or something. 14:54 MTDiscord for those who have learned what they are, they are more effective because they take up less space 14:54 erle oh my 14:54 MTDiscord and convey meaning instantly 14:54 erle please wait here, i can explain 14:55 MTDiscord we should move to minetest 14:55 erle okay 15:20 sfan5 "for entertainment you can spare designing an inefficient user interface" ?! 15:21 sfan5 ROllerozxa: [Screenshot_20220415_145251.png] IMO the color is too dark for a button, if you remove the gradient it should use the lighter of the colors as fill background 15:22 erle yeah i also noticed that it becomes less readable, but i wanted to focus on the cues. 15:24 erle i think a very easy change that most people would “get” is: make buttons outset (at least 2px border), make input fields inset (at least 2px border). redesign tabs to be like buttons open at the bottom. ROllerozxa could you maybe make that change quickly and share a screenshot? 15:24 erle i would do it myself, but i do not know how 15:25 erle ROllerozxa for proper default colors, you can use the formula from WCAG 2.0 for AAA contrast to see if foreground/background contrast is okay. 15:25 MTDiscord for entertainment the instant suability of a UI is not as neccasary as for a tool 15:25 MTDiscord *usability 15:26 erle you keep saying that like a person who has never lost a hard-to-acquire item in a computer game due to shitty interface design 15:26 MTDiscord it should not be too hard to figure out 15:26 MTDiscord that might be true... 15:26 MTDiscord I played no mans sky for a bit 15:26 MTDiscord the UI was confusing at first 15:26 MTDiscord but I was able to figure it out, and then it was ok 15:27 erle well, bad discoverability does not necessarily mean bad usability. emacs is hard to learn, but has good usability. 15:27 erle problems start if *no matter what experience you have* you can not distinguish things at a glance 15:27 erle then games get frustrating 15:28 erle well, everything gets frustrating. but with games, it takes you out of the flow. 15:32 ROllerozxa erle: buttons are already outset but I don't know how many pixels, looks like 2 pixels? 15:33 erle ROllerozxa then make it 4. i have a hard time seeing it. 15:33 erle ROllerozxa, for contrast: calculate the relative luminance of text color and background color according to the formula here https://www.w3.org/WAI/WCAG21/Understanding/contrast-minimum.html#dfn-relative-luminance 15:34 erle ROllerozxa then after the L = 0.2126 * R + 0.7152 * G + 0.0722 * B dance (read the page, it is not simply RGB values) you do (L1 + 0.05) / (L2 + 0.05) to find the contrast ratio. it should be at least 4.5 15:35 erle there is software linked on the page that does this automatically for you 15:35 erle L1 is the luminance of the lighter color, L2 the one of the darker one 15:35 erle in fact, even when keeping the gradient, it makes sense to scour minetest for bad defaults here 15:37 erle sfan5 are you aware that crashing windows builds of minetest can leak some of the information about your dev machine where you built it, like your username? 15:38 erle assuming you build the windows builds 15:38 erle a friend of mine had a crash where the path was definitely not existing on their machine 15:39 sfan5 of course 15:39 erle okay. i just wanted you to know because sometimes people don't realize the info leaks. 16:45 Krock will merge #12194 in 10 minutes 16:45 ShadowBot https://github.com/minetest/minetest/issues/12194 -- upright_sprite: Fix walk animation in first person by SmallJoker 16:54 Krock merging 17:29 Krock who thought that "on_secondary_use" was a good name? It's the opposite button of "on_use" 17:42 erle “git blame” is your friend? 17:48 Krock it won't change anything. 6 years too late. https://github.com/minetest/minetest/pull/3382#issuecomment-161159654