A little early this month! Since I may not be available on the 1st.
I'd like to ask about how the visual changes to some of the civ creatures came about during the transition from text to graphics. Elf beards and kobold snouts, anything in the vision or the fiction of the default setting that brought it to fruition?
aSpatula66:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8553391#msg8553391DPh Kraken (op):
http://www.bay12forums.com/smf/index.php?topic=169696.msg8555159#msg8555159Elf beards was a miscommunication. I just didn't request that they be drawn. We'll get to it at some point.
Kobold snouts was a result of Mike's depiction long ago, the fan craving for the cutebold. Cutebolds became canon, as they ever-evolve from chihuahuas to goblins to dragons to cutebolds and beyond.
Another one, goblin hair, is complicated because we have some art but it doesn't fit the existing raw hair styles. So that just needs to be sorted out.
Are features of dwarves like strange moods, ability to see in darkness, to breath in non ventilated caves etc. can be considered magical and hence a subject of change in Myth and Magic editor?
I think with the luafication and then myth and magic, it's more like everything is subject to change. But for darkness and breathing, those are broader mechanical questions that would need to be addressed in the map/game code as well, since it doesn't track light or oxygen (beyond subter/inside/outside and the existence of flows.)
have any prototypes been attempted yet for a visible day/night cycle in adventure mode, what can we expect light & time information to look like, does it present any technical challenges (what happens underground?), and has putnams knowledge of shaders been explored as a possible solution for some graphical features?
Shonai_Dweller:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8554384#msg8554384Putnam:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8554532#msg8554532Eric Blank:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8554554#msg8554554jecowa:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8554667#msg8554667This is covered by the replies mostly - it exists and any further display beyond shrinking vision is a graphics problem. There could also be a widget up in the top right for handling date, time, light, weather, tracks, odor, etc., so you don't have to press a bunch of keys to get at those separately.
1. Is new Lua scripting for raws generation only or it's also for run-time use?
2. Will raws eventually migrate to more Lua friendly format like JSON or it always will be string concatenation approach?
3. How much of new magic system will be Lua driven and how much hardcoded?
4. Will old systems be rewritten to use Lua?
5. Could we use Lua to create our own mechanics in the game?
6. What version of Lua it is?
7. What brings you to make such decision?
DPh Kraken:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8555412#msg8555412Putnam:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8555635#msg8555635The replies cover a lot of it (Putnam has done all of the lua work to this point.) So I'll just cover my own side of it:
3+7. I want as much of it out there as possible. One reason I wanted lua/scripting first is so that when I get to myth generation, it can be out publicly as much as possible, instead of creating a new forgotten beast situation where a lot is hidden that parameters can't get at. I wanted to deal with the forgotten beast/vampire/werewolf/etc. situation itself. So this all seems nice.
We've still got hard-coded magical effects at the granular level through interaction effects - this will probably be true for a while, but magic itself should (over time) become more and more scripty, and the hope is that myth gen and magic system gen are all scripts as they come in and the lua beta progresses. I might throw a few things in for the end of adv beta (before lua beta) that use the old pre-lua system just because it's the only thing I have now, but that's just to get the tutorial done and the chosen ball rolling, and anything I add nowish should be luafied in the early stages of the lua beta.
After that, for even some basic things I want to do with magic, I require multi-step scripts that can refer back to variables and so forth, and it was just looking like I needed to make a scripting language. And that would be too much, when scripting languages exist when a history of use in games, which also solve the forgotten beast problem. So we arrived here. The happy world of scripts generating scripts using a standard scripting language.
And it'll just be cool to see what people do. The decision just seemed kinda exciting, ha ha, and possible, and prudent, and useful.
4. Yeah, as Putnam mentioned, we're already rewriting old systems and we'll just keep going with that as long as the speed stays up and there's purpose to it etc.
5. Per DPh Kraken and Putnam, not yet, but as we build more of an API and more gets exposed, this seems inevitable. I'm not a lua expert (or even novice yet) so I can't really speak to the possibilities other than what I've seen in other games with modding scenes. As long as it remains performant, we'll just keep expanding over time, and try to make new features compliant immediately if large problems don't arise, etc. Currently optimistic!
With the introduction of Lua scripting, can we anticipate other movements from hard-coded to the raws in this same swoop? Such as the non-kiln workshops and their reactions?
Putnam:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8555635#msg8555635Yeah, we've already bitten off enough for this swoop, but we're hoping to get more and more out there. Whether that involves the reactionification of more jobs, or something else, I don't really know yet.
1. Is there any plan to revisit graphics for the "world screen" in fort mode and "travel screen" in adventure mode? Even on normal displays the icons are super small. I've recently bought a fullhd display and it's absolutely impossible to play because of how small everything is.
2. Any luck with making the game accept ttf/otf/any other fonts? Same problem as above, the one that comes with the game is not very readable for me as it is, but HD screen makes it even more so.
3. Combat would really benefit from simplest animations, like entire image of a unit moving in direction of the attack (Caves of Qud style). Would that be possible to implement?
4. Now that most things on the screen is paletteable, are we any closer to something resembling ray-traced light sources? One of the prettiest things in the game is magma, because of the amazing gradient it has across long distances(I assume it's depth-based so not raytracing but it sort of behaves as if it is). It would greatly help with mood and immersion to have more effects like this.
5. Speaking about procedural magic, what is the gameplay value of it? Currently I have a battle axe wielding dwarves bonking goblins on the head. How is prongen magic goiing to change that - will there be some close-quarter spells eg freezing hands / ranged spells eg fireball(obviously hehe)? Or weapons with procgen effects (weakening, poison, draining HP etc).
6. Have you played Noita? It has pretty interesting magic wand building mechanics that interacts with procgen world in a very entertaining way.
7. Obligatory question. Any news on the archery fix?
8. How will the potential conflicts between the game calling Lua API and mods calling it be resolved? Will order of mods in the mod manager influence precedence of changes?
9. I know Lua is industry standard, but for the sake of friendly trolling, why not Python? How did the choice of language happen? What is your take on one-based indexing in Lua?
Putnam:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8555635#msg8555635jecowa:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8555717#msg85557171. Yeah, it's quite small. We probably need another level. I'm not sure when that'll happen though. But it's something under consideration because, as you say, very small.
2. ttf seemed troublesome for as long as we had it. I'm not sure what the obstacles are. The underlying code for displaying text is pretty much the same, so the obstacles are probably the same anyway.
3. We've done some experiments with sliding units out of their squares. There are some issues with it due to how our dirty buffer works to keep the graphics updated at an adequate speed. These can theoretical be overcome, though it's a large problem. Then we'd be able to do slide-y attacking and even slide-y walking, though I'm still not sure slide-y walking looks good at our movement speeds.
4. If we moved over to triangles/quads, which are theoretically supported more easily in SDL 2, we'd be able to do more with shading/vertex lighting, but that's probably not a trivial move. I'm not sure how performance would be affected (either way.) All palette etc. changes are pre-baked as it stands, which doesn't work for many effects.
5. Ha ha, as Putnam suggests, we are considering everything, yeah, including possibilities for dwarves. But certainly gameplay will be affected early in the dev process by critters doing horrible things to you. Procedural magic has the broader purpose of making the worlds more interesting and varied in general.
6. Yeah, I've won it a few ways, though I haven't seen most of the optional content. Fun for spell editing, fun for fluids.
7. Should be one of the first things after we escape adv beta. Which hopefully isn't too too far away.
8. Putnam handled this reply. Regarding mod order, I assume mod order controls the conflicts/stomping, though I'll defer to Putnam since she built the system and used it.
9. Putnam also handled this reply. For my part, I just know lua works well enough in lotsa games, and Putnam said she could do it in lua, and she did, so that's good. If Python were more expedient for her, we very well could have gone that way (since I don't know lua or python ha ha, aside from the lua I've now studied a bit.) Certainly the one indexing doesn't play nice with our existing language, and there are other oddities to deal with, like the and/or combos for max/ternary operators which I just have to get used to, but on the whole it seems to be going well.
One more. Since manager functionality is, by definition, scripting, will that also be exposed via Lua bindings?
The interface generally is on the table, but it's a large project. We'll just see more and more come in over time. I'd be happy if the interface can be remade entirely.
@Toady One, I’ve just noticed that the devlog lists the newest version of DF (50.14) as being published on 9/25/2023
Thanks for the catch!
With the planned addition of things like improved sieges and the replacement of "attack triggers" for sieges and megabeasts, how are you planning to prevent the possible result of either never being seiged at all or being steamrolled on year 1?
Eric Blank:
http://www.bay12forums.com/smf/index.php?topic=169696.msg8555794#msg8555794Eric Blank's reply covers it more or less. Unless you are on an island, never being sieged will be a result of peace (which you can disrupt), or being far away from the potential action (which is a choice). For steamrolling, that's definitely an issue, but the default start of seven dwarves with a wagon is something that we can still reasonably simulate as not detected until they make something of themselves - if a patrol happens to cross right through your location, then that's an issue of start site selection that was presumably player choice. And then there's the possibility of larger starts, starts with armies, etc etc.
It's up to the UI in part to guesstimate for the player what their game will be like for warning purposes either way. I think there should be plenty of reasonable start locations that give something like the current experience in most worlds, and hopefully we can find them for people. But there's certainly the possibility of a little extra surprise. This is probably fine. And since we have a difficulty tab now, it'd be a legit setting to just be like "no invasions in the first few years please", though the more we can arrive at that organically the better.