03:17:26 Stable (0.20) branch on crawl.beRotato.org updated to: 0.20.2-0-g0475c4d 03:27:09 Unstable branch on crawl.beRotato.org updated to: 0.25-a0-663-gace7076 (34) 03:30:53 Fork (bcrawl) on crawl.kelbi.org updated to: 0.23-a0-2999-g24818c1c7b 05:13:00 -!- amalloy is now known as amalloy_ 11:48:51 I guess this is old news at this point, but what is up with the "set fake version" step for github actions? 11:50:41 travis runs git fetch --unshallow to avoid version errors, is that not an option for actions? 11:50:48 granted it's a very heavy call on this repository 11:53:47 Looks like ^ q is for alexjurkiewicz 12:04:16 looks like the checkout action has a setting that will do this 12:08:56 alexjurkiewicz also it looks like the checkout action should be able to do submodules too, does that not work for some reason? 12:10:02 maybe this is to not fetch all submodule history? 13:14:28 Stable (0.21) branch on crawl.akrasiac.org updated to: 0.21.3-0-ge33f2bf 13:36:21 Unstable branch on crawl.akrasiac.org updated to: 0.25-a0-663-gace7076 (34) 15:07:31 hello 15:08:15 i wish to develop a rpg game where i will use the crawl tileset provided in opengameart 15:08:39 is there any thing i need to know before i use it? the game will be pay to play 15:14:55 OtakuSenpai: crawl tiles are licensed under CC0, so it's fine to use it in commercial works 15:15:07 really? 15:16:25 <|amethyst> the ones in that archive at least 15:16:34 <|amethyst> I don't remember if all the splash screens have been CC0 licensed 15:16:46 yeah its ok 15:19:10 all the recently added splash screens have CC0, not sure about older ones 15:19:38 <|amethyst> This page, despite the "as of 2010" at top, does appear to have been updated since then... but not since 2016 https://github.com/crawl/tiles/blob/master/TILES_UNDER_UNKNOWN_LICENSE.md 15:19:53 the ones in tiles repo should be: https://github.com/crawl/tiles 15:20:46 oh, yeah, what |amethyst linked is relevant 15:21:16 <|amethyst> yeah, I'm not sure about the archive at opengameart, didn't realize it wasn't the same project 15:22:42 https://opengameart.org/sites/default/files/Dungeon%20Crawl%20Stone%20Soup%20Full.zip So this one is free under CC0 15:23:02 \https://opengameart.org/content/dungeon-crawl-32x32-tiles-supplemental 15:24:08 nvm 15:24:32 OtakuSenpai: if you want the current set of crawl tiles, download this and look in crawl-ref/source/rltiles dir: https://github.com/crawl/crawl/archive/master.zip 15:25:02 all new art we add is licensed CC0; the tiles project we've been talking about is useful for older tiles where we weren't able to get permission from the author 15:25:43 the odds that an author of said older art (listed in https://github.com/crawl/tiles/blob/master/TILES_UNDER_UNKNOWN_LICENSE.md) are basically nil, but if you wanted to be extra sure, don't use those tiles 15:25:44 <|amethyst> Looking at about a dozen of the tiles in the list I posted, they don't appear to be in the zip file you linked, so my guess is everything in that zip file is CC0 15:26:33 the master.zip file I linked is the current source with the most current tiles; not sure how old your opengameart.org zip is 15:27:21 depending on how old your zip is, the differences probably aren't vast, but there would be some new tiles in the current repo for sure, which are also CC0 15:51:39 thnx a lot gammafunk and |amethyst 15:59:44 -!- amalloy_ is now known as amalloy 16:17:12 -!- amalloy is now known as amalloy_ 16:29:37 C++ question. We have all these plain text files used for game content. Do these get read at run-time? So the player can't just grab an EXE file and run the game? 16:29:51 Or is there some standard way to pre-parse text files at compile time? 16:32:51 theJollySin, I'm not a serious dev, just a one-time-at-least contributor, but I know that at least some of those text files are used during build time -- I don't know exactly via what mechanisms. You could look at the Makefile and follow all its descendant activities to try to find out how it works 16:33:39 theJollySin, regarding "just grab an EXE file and run the game," no, that's not going to happen, and not just because of the text files. Applications need shared libraries and other resources at run time, unless they're statically built causing a bloated giant of an EXE file. 16:34:05 theJollySin: which text files are you referring to 16:34:09 Oh, it is happening at compile time. Nice. Okay, sure, I can follow the Makefiles. 16:34:18 theJollySin: no, that's not correct 16:34:46 how things are use at compile time vs run time depends on the file in question 16:34:51 so you need to be a bit more specific 16:35:06 OH, pick a Makefile. We have vaults, rand art variations, unrandarts, and content strings for all kinds of things, random or not. 16:35:10 we don't handle all files in the codebase uniformly based on whether their contexts are ascii text 16:35:47 yes, how that is handle depends on the file; some things are used at compile time, like artefact definitions, but that is more the exception than the norm 16:36:06 some things are handled at run time, but upon start up; DES files would be an example of this 16:36:32 that's why I said "at least some", implying "not necessarily all" 16:36:42 Yeah, I've noticed the vaults don't require a re-compile when I'm editing a faulty arrival vault. 16:37:04 Psymania: what you said was not particularly relevant 16:37:40 So... the artifact file(s) get read at compile time? Okay. I can try to see where in the code base we parse the two types of files, and see how they are ingested. 16:38:00 theJollySin: you can do that, but again, even that is not uniform in approach; it depends on the file, and different files have vastly different purposes 16:38:10 As I said, this was more of a lack of understanding our tooling. Or... just C++. In Java, Python, or Fortran I'd know how to solve the same problem. 16:38:14 art-data.txt vs the text files in rltiles 16:38:27 they are handled totally differently since they just have extremely different purposes 16:38:34 Sure. 16:38:50 gammafunk, hard to be particularly relevant in resposne to a pretty overarching/general question :P 16:38:59 but if you want examples of compile-time text file usage, art-data.txt and rltiles/dc-*.txt are good examples 16:39:10 they are not handled the same way since they're used for different purposes 16:39:34 Psymania: it's also hard to be particularly relevant when you don't have the information you need to give a proper answer 16:40:32 even run-time usage of text files tends to be very different; compare use of DES files vs the description data in dat/descript 16:45:19 OMG 16:45:30 We use a Perl script to auto-generate C code, based on a Text file? 16:45:52 Okay, that's probably fine. I just don't like Perl much. 16:46:33 yeah, and that's not the only instance of auto-generation of code 16:48:54 see also rltiles/tool/tile_list_processor.cc, which is C++ generating C++ 16:51:24 on, and the newest example, util/species-gen.py, which is python generating C++ 16:52:55 Huh. That's interesting. As long as we ensure specific version-ranges of Python during the build. 16:53:56 that code works in python 2.7+, so not really an issue 16:54:26 eventually we will drop all support for python2, but we haven't finished moving webtiles away from it in terms of server installation 16:56:22 Python is one of my languages at work. I could take a pass at the translation, it's easy to do. 16:56:42 The code just isn't super-well commented, and I'm more of a back-end guy, so I hadn't touched it yet. 16:57:45 no, there's no need for python translation; that species gen code will work fine in python3, and advil and aidanh have already done the python3 conversion work for webtiles 16:57:57 I said server installation, meaning not all servers have python3 support 16:58:49 this is relatively recent stuff, especially the webtiles overhaul; the species generation code was always forward compatible, but again we only had python2 guaranteed across servers, so it was backwards compatible 16:59:57 Ah, yeah. Ubuntu still shipped Python 2 until recently. Fair. It's annoying Python isn't fully backwards compatible. 17:01:25 yeah, even if it was backwards compatible, our webtiles server codebase was pretty ancient and hadn't seen significant work for a long time 17:01:59 til that I need to hide notifications when recording my lectures :-) 17:02:04 so thankfully those people I mentioned (and alexjurkiewicz) have been working on that; feel free to take a look at the webtiles code in crawl-ref/source/server 17:02:07 haha, sorry! 17:02:16 no problem it's my fault for not thinking of it 17:02:42 ad.vil, or would he prefer adv.il 17:02:47 heh 17:02:53 there's probably a setting on obs to do this 17:02:55 one would hope 17:03:18 hrm, well if you need desktop sound, you'd have to use your OS's per-application sound control 17:03:29 if you don't need desktop sound in your recording, yeah you can just mute it in obs 17:03:59 I have to use per-application sound control for OBS recordings a lot, since some games etc come through really loud 17:04:04 ah I mean notification banners 17:04:21 oh, right; I don't know of any OBS way to control that, but there could be 17:04:47 in os x 17:04:47 usually people do that in the app itself 17:04:58 I have my little pre-stream checklist of what things to enable/disable 17:05:08 heh yeah 17:05:12 I'm extremely new to this 17:06:06 I guess I can just manually turn on do not disturb mode 17:34:39 advil: github actions could fetch the whole history, but it would be slower 17:34:57 advil: also, submodules are fetched for the OSes that require it (crosscompile and macos). But not for linux 17:37:18 ok, so just time 17:37:18 I was looking into adding artifacts (which seems way easier than it was for travis) but that really needs a real version 17:37:37 if you were planning to build only tagged versions, you still wont need to unshallow 17:37:47 the tag is available as an environment variable 17:38:13 I'm not sure the cost of a full fetch is so bad 17:38:39 it's not that bad. But I tried to avoid unecessary work given this runs for every commit on free service 17:39:00 if you can load the tag from GITHUB_REF or whatever, isn't that better? 17:40:41 I wonder if there's an alternate strategy for autogenerating versions that wouldn't be so painful 17:41:12 hm, not sure what you mean by autogenerating versions. Creating the tag automatically? 17:42:17 generating the version string 17:42:56 for normal CI builds of random commits? or as part of a hypothetical "release" workflow which builds binaries etc? 17:42:56 i.e. what gen_ver.pl does 17:43:29 I do think it's best to test with the real version string in place, it makes the logs a lot easier to interpret 17:44:13 so for both 17:45:42 for the latter very easy, if you are interested in automating releases i' happy to write a little poc/prototype. for the former you'd probably need to fetch the whole git history. The alternative would be hitting the github api but that would be much more complicated 17:46:23 i suppose a third option would be to hardcode the current version in the workflow file... 17:47:17 that might not be so bad, I was thinking about that 17:48:38 or using --shallow-since= 17:48:47 and update the date every once in a while 17:49:19 when building, use the tag if it exists, or if not use the hardcoded version + "-dev" 17:50:05 ' 17:51:36 About the hardcoded static v1.0.0 making build logs hard to read -- is it something that will get better as you get used to it? 18:12:58 well the github uui at least shows you the commit name 18:16:11 I think I'm not worried about the cost of a deep checkout, cpu-wise it's small compared to the actual build, and network-wise I doubt it's any worse than what apt-get is doing 19:13:08 see fetch-depth here then: https://github.com/actions/checkout, one line change 19:55:17 -!- jfcaron_ is now known as jfcaron 20:09:34 -!- amalloy_ is now known as amalloy 20:46:20 aidanh: now your branch has been merged, should I remove my commit adding a requirements.txt file? 20:47:40 i'm not quite sure how to use your code to generate a requirements.txt file. Can you explain what it does and how it works? 20:59:39 aidanh: the `make lint` command references --mypy-config=mypy.ini but this isn't committed to the repo 21:07:10 I'll add a blank mypy.ini (well, one line: "[mypy]") 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-664-g25c5f13: webtiles: Add support for customised env vars 10(16 hours ago, 3 files, 21+ 3-) 13https://github.com/crawl/crawl/commit/25c5f13a32d1 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-665-g2260f45: webtiles: Allow loading games via function 10(16 hours ago, 3 files, 104+ 40-) 13https://github.com/crawl/crawl/commit/2260f451b92f 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-666-g44c57c7: webtiles: Add basic requirements.txt file 10(16 hours ago, 1 file, 2+ 0-) 13https://github.com/crawl/crawl/commit/44c57c71ff3e 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-667-g4c42ca4: webtiles: Update README 10(16 hours ago, 2 files, 57+ 49-) 13https://github.com/crawl/crawl/commit/4c42ca4328b5 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-668-g0030060: webtiles: Allow dynamic reload of games config 10(16 hours ago, 3 files, 57+ 37-) 13https://github.com/crawl/crawl/commit/003006078d73 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-669-g2b5dcde: webtiles: Allow specifying -dir and CWD for games 10(16 hours ago, 4 files, 19+ 1-) 13https://github.com/crawl/crawl/commit/2b5dcdec8625 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-670-gb867fd0: webtiles: Improve load_games documentation 10(16 hours ago, 1 file, 20+ 10-) 13https://github.com/crawl/crawl/commit/b867fd07e04f 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-671-g0a657b6: webtiles: Allow editing blank rc files 10(16 hours ago, 1 file, 7+ 2-) 13https://github.com/crawl/crawl/commit/0a657b6f2e5f 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-672-g8399552: webtiles: Allow per-game milestone path config 10(16 hours ago, 3 files, 34+ 7-) 13https://github.com/crawl/crawl/commit/83995526f3f8 21:24:43 03Alex Jurkiewicz02 07https://github.com/crawl/crawl/pull/1253 * 0.25-a0-673-g8f76b3b: webtiles: Always show milestone column 10(16 hours ago, 1 file, 0+ 4-) 13https://github.com/crawl/crawl/commit/8f76b3ba29cd 21:24:43 ... and 29 more commits 22:20:40 Psymania (L27 GnFi) ASSERT(attacker) in 'attack.cc' at line 353 failed. (Pan) 22:22:15 :0 22:26:54 (rebase) 22:29:53 !crashlog 22:29:53 !cmd crashlog 22:29:53 Command: !crashlog => !lm ${*:-!ignoredcrashers} crash -log 22:29:53 oh good nick 22:30:01 21819. Psymania, XL27 GnFi, T:111730 (milestone): http://crawl.akrasiac.org/rawdata/Psymania/crash-Psymania-20200325-022038.txt 22:31:13 corruptor killed by javelin from its own summon 22:31:42 Is this that struct bolt crash that we can't fix due to how the agent is resolved? 22:32:25 I am grateful that my game was still there, btw :) 22:33:02 yes, this sort of crash would just revert the game to the last time you marshalled the level 22:33:09 so level entry 22:33:25 or save restore if that happened more recently 22:33:39 marshalled? 22:37:25 save file update; game data serialized to the save file due to level change, save and quit, couple other things 22:38:13 if a crash happens, game progress to that point is retained, but not anything you did after the time the game data was last marshalled to save file 22:44:48 ah