--- Log opened Sat Sep 22 00:00:43 2018 20180922 00:05:09< hk238> So 'sheep wars' 20180922 00:05:11< hk238> :D 20180922 00:50:29-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-umc-dev 20180922 01:01:09-!- noy [~Noy@wesnoth/developer/noy] has quit [Quit: noy] 20180922 01:01:31-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-umc-dev 20180922 01:01:56-!- noy [~Noy@wesnoth/developer/noy] has quit [Client Quit] 20180922 01:02:19-!- noy [~Noy@S01067cb21b205894.vs.shawcable.net] has joined #wesnoth-umc-dev 20180922 01:02:21-!- noy [~Noy@S01067cb21b205894.vs.shawcable.net] has quit [Changing host] 20180922 01:02:21-!- noy [~Noy@wesnoth/developer/noy] has joined #wesnoth-umc-dev 20180922 01:02:42-!- noy [~Noy@wesnoth/developer/noy] has quit [Client Quit] 20180922 01:38:37-!- mode/#wesnoth-umc-dev [+o shadowm] by ChanServ 20180922 01:38:44-!- mode/#wesnoth-umc-dev [+r] by shadowm 20180922 01:38:47-!- mode/#wesnoth-umc-dev [-zo shadowm] by shadowm 20180922 02:18:42-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180922 02:18:47-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-umc-dev 20180922 04:18:07-!- hk238 [~kvirc@unaffiliated/hk238] has quit [Quit: KVIrc 5.0.0 Aria http://www.kvirc.net/] 20180922 04:45:03-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has joined #wesnoth-umc-dev 20180922 07:06:22-!- vn971 [~vasya@94.158.103.15] has joined #wesnoth-umc-dev 20180922 08:25:31-!- zookeeper [~lmsnie@wesnoth/developer/zookeeper] has quit [Ping timeout: 246 seconds] 20180922 13:16:49<+wesdiscordbot> hi, if youre interested in developing a faction pm me 20180922 13:20:22<+wesdiscordbot> Not gonna be doing anymore WML stuff until I know more about Wesnoth 2.0 20180922 13:38:07<+wesdiscordbot> I just posted it to the forums too: https://forums.wesnoth.org/viewtopic.php?f=15&t=48860 20180922 14:28:32-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180922 14:28:38-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-umc-dev 20180922 14:55:42-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180922 14:55:48-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-umc-dev 20180922 14:57:56<+wesdiscordbot> you could learn to draw sprites/terrains 20180922 14:58:38<+wesdiscordbot> those would be useful no matter what version it is, and knowing how to draw a little pixel art comes in handy here and there 20180922 15:17:02-!- hk238 [~kvirc@unaffiliated/hk238] has joined #wesnoth-umc-dev 20180922 15:18:31< vn971> @Clydefrog: there are two basic approaches. Make a big Era (6+ factions, more units). And smaller Era (5- factions, less units). In case of the latter, I could probably play to help balancing, leave feedback. 20180922 15:19:04< hk238> hi 20180922 15:19:18< vn971> I'm never interested in "expanding" Default Era though as I think the current one is too big (lots of stuff to remember) and disbalanced (UD-vs-Drakes) already. 20180922 15:19:21<+wesdiscordbot> vn971: Clydefrog is no longer present on Discord. 20180922 15:19:24< vn971> hk238: 20180922 15:19:34< vn971> @Pentarctagon ok got it, nevermind then. 20180922 15:20:03< hk238> I'm not sure UD-drakes is disbalanced, which one's favour is it? :D 20180922 15:21:06< hk238> I mean coz in like afterlife undead are pretty much the favourite candidate for winning, but drakes are pretty good in maps which have hard terrain and require mobility 20180922 15:23:03<+wesdiscordbot> UD vs Drakes has always been crazy 😄 20180922 15:24:07< vn971> hk238: I mean hi.) yes, acknowledge that. It all depends on the map. Never played big maps against serious opponents. On smaller like Isar though, UD are at an advantage I believe. Skelly archers + Adepts are good, hard to confront. 20180922 15:27:00< hk238> Hi vn971. . there maybe some balance issues in some maps... I probably can't tell.. :D But certainly when considering level3 units they're not very balanced like UD gets lich which drakes have very hard time dealing with 20180922 15:27:27< hk238> in regular maps the level3 unit issues don't matter games are decided before any side has many high level units 20180922 15:29:21< vn971> hk238: agree on that one. The main reason why lvl2+ may feel balanced in Default Era is that nobody actually advances to those levels. 20180922 15:30:17<+wesdiscordbot> Isar's Cross is terrible in general 20180922 15:30:27< hk238> I feel tempted to delve into creep wars :d 20180922 15:31:04< vn971> @Vazl depends on your criteria, but anyway, I referenced it to talk about map size only. Since it's a popular map on MP, people know the size when you say "isar". 20180922 15:31:11<+wesdiscordbot> Yeah, you generally don't get level 3 units in vs games 20180922 15:31:24< vn971> hk238: :D 20180922 15:32:19<+wesdiscordbot> vn971: Yeah, it's popular for.. reasons 😉 I think because it's quick, mostly. I miss ye older days when the bigger maps were played a lot more, by casual players, and when 2v2 maps where also played more often. I still love Clash ❤ 20180922 15:35:51< vn971> @Vazl: I think one important thing about Isar is that it's team-ed as well. You have to cooperate to be efficient at times. Otherwise yes, it is of course a very small map. Simple luck can be pretty much deciding as even a few battles can decide a lot. 20180922 15:36:20< vn971> @Vazl: regarding teams. Some like it more, some like it less. I guess it just depends on your general character type / mentality. 20180922 15:36:40<+wesdiscordbot> Yeah, I don't think it's a balanced map at all, but that's me. 20180922 15:36:42< hk238> also for an example drakes on player 3 or player 4 can attack opponent village on turn 1 which is not very great for balancing :D 20180922 15:37:45< hk238> I coined this this drake rush where you basically recruit 3 fighters + burner and, grab the water village with leader, and then if opponent places a poor unit on the hut village, you can attack it with 4 units depending on how many quick traits you get 20180922 15:38:20< vn971> oh, BTW, 2-vs-2 Creep Wars game open right now. (Though I'm starting to misuse this channel a bit -- sorry for that.) 20180922 15:38:21<+wesdiscordbot> Isar's has been said for a long time to not be balanced. 20180922 15:41:12<+wesdiscordbot> :GWfroggyPeepoDetective: 20180922 15:43:05<+wesdiscordbot> @Pentarctagon Yes 😃 20180922 16:12:25-!- mattsc [~mattsc@wesnoth/developer/mattsc] has quit [Quit: So long and thanks for all the fish.] 20180922 16:33:28<+wesdiscordbot> But isar is so fast that this does not matter too much there you just go to play another one after 4 turns sometimes. 20180922 17:09:46< hk238> oo vasya we got done in by a 1st timer 20180922 17:10:18< hk238> although to be fair it was mostly RNG 20180922 17:10:25< vn971> hk238: after 7 deaths by our leaders though - yes) 20180922 17:10:32< hk238> total chance to defeat guard with the given attempts was way above 50% 20180922 17:10:39< vn971> hk238: I think that's off-topic here though. 20180922 17:11:05< hk238> yeah I guess.. but considering the development of this mod, I think buying MPs is a little too easy :o 20180922 17:17:37< vn971> hk238: previously the cost was constant even! xD Like, for many-many years till somewhere on 2018. 20180922 17:17:54< vn971> the progressive cost is good though, I agree with you on that pretty much. 20180922 17:18:05< vn971> anything above 10MP should be fairly costy. 20180922 17:18:32< vn971> in 2017, it was common to have 19MP and so on :D 23 or 24 was the maximum I saw I think. 20180922 17:21:47< hk238> my personal taste would be such that you couldn't buy plain MPs a lot but instead would have to make a decision like.. Do I take these boots that increase mobility, or do I take those boots that increase resistances? :D 20180922 17:22:23< hk238> but in that case the difference in the initial mobility would make a huge difference so would need to work on that aspect as well 20180922 17:22:49< hk238> I'll take a shower probably want to look into the code later on as well :d brb 20180922 17:55:44< hk238> one way of doing things would be like if you'd have a specific set of units you could pick 20180922 17:55:58< hk238> then you could make the shop work so that it filters items that are possible for the unit in question 20180922 17:56:18< hk238> and then for each item you could either have a positive list of units that it's allowed on, or negative block list of units that it's not allowed on 20180922 17:56:32< hk238> so for an example if you have 3 possible units, Drake Fighter, Elf Fighter, Dwarf Fighter 20180922 17:57:07< hk238> then you could create an item like "Dwarven boots" which would grant the unit physical resistances, and maybe lower movement cost on hills. Then you couldhave a positive list which says: Allowed on Dwarf Fighter 20180922 17:57:19< hk238> or a negative list that says disallowed on Drake Fighter, Elf Fighter 20180922 17:57:34< hk238> and thne you would filter the items based on the positive or the negative lists and show only the items that can be purchased by the unit in question 20180922 17:58:15< hk238> you could also have unit specific lists of things that they can buy or number of slots like 20180922 17:58:24< hk238> drake fighter can buy 2 melee weapons 0 ranged weapons 20180922 17:58:35< hk238> or drake fighter can buy boots and helmet, but can't wear armor due to the wings 20180922 17:58:42< hk238> or something like that 20180922 18:00:12< hk238> and I guess you could define some sort of arrays which contain the possible advancement classes of each unit, so if you include "drake fighter" in the block list, it would also look up all the advancements, either by simply defining the block list by appending the array into it, or having some sort of autmated process 20180922 18:01:25< hk238> by the way in Lua how do you import/export code? I'm using this style of writing non-local functions and then just referencing them in other files.. which is kind of bad because the files that use the functions don't have any explicit reference of their declaration 20180922 18:02:18< hk238> so it would preferable to have some sort of import style like "import generic functions" but I don't know how to do that yet, and then you'd access the contents via that import variable. I have a generic functions file of that style which is also used by several addons, I'm just copypasting it to each addon. :D 20180922 18:02:50< hk238> of course it would be better to do that in some sort of modular fashion, so that it would be a resources package and then would be required by addons. but dont know how to do that yet either 20180922 18:02:52<+wesdiscordbot> That's how it's supposed to work. Ability to mark functions as local is intended to mark "this function isn't used outside this file". 20180922 18:03:01< vn971> hk238: and in addition to what all you said, make it generalized so it'd work on e.g. Ageless. In other words, a mind-blowing task for me.:D Too much of an undertaking for me personally. 20180922 18:03:43< hk238> yeah I guess all of this requires lots of work. It's easier to think up something than actually write the stuff that does it, because it's arduous 20180922 18:03:44< vn971> hk238: yes, all functions that you don't need outside are best marked as "local". 20180922 18:03:44< hk238> :D 20180922 18:04:09< hk238> yes I do understand that, but I think the practice of writing them as non-local and then directly referencing them in otherfiles is bad 20180922 18:04:21< hk238> because then the other files contain no explicit reference to where is this thing coming from 20180922 18:04:27< vn971> if you want for it to be available globally, remove "local" and name it somehow like crazyaddon_calculate_score or crazyaddon.calculate_score 20180922 18:04:34<+wesdiscordbot> There is a module system of sorts: https://wiki.wesnoth.org/LuaWML/Files#wesnoth.require 20180922 18:04:36< hk238> so instead a module structure where it says on the first lines that "oh this isthe stuff I'm importing here" makes it clear, also better for namespace 20180922 18:04:55< hk238> yeah I guess that kind of naming convetion would also circumvent the problems 20180922 18:05:06< vn971> hk238: it's not very good if your function name is short and may conflict with other add-ons. It's okay otherwise. (But not best for reasonability on your code and performance.) 20180922 18:05:38< vn971> @jyrkive: this requires add-on downloading though, so basically is not an option at all in many cases...:( 20180922 18:06:02< vn971> @jyrkive: in other words, a kind of theoretical possibility only, onfurtunately.. 20180922 18:07:13<+wesdiscordbot> You can put functions on a table of your own though. ie: I put any lua functions I create that aren't WML tags onto a global table called WMP. so using them is as WMP.some_function() 20180922 18:08:04< vn971> unless someone writes some smartass logic to store Lua files as strings. E.g. wesnoth.cache_do_file("~/add-ons/crazyaddon/lua/test.lua") and in WML: {CACHE_FILE ~/add-ons/crazyaddon/lua/test.lua} 20180922 18:08:40< hk238> I think there are some serialization things out there for lua I tried looking into it but didin't find anything that seemed simple enough 20180922 18:08:41< vn971> @Pentarctagon: yeah, I do exactly the same. 20180922 18:09:58< vn971> hk238: serialization of functions is pretty hard as functions are actually complex. They "capture context". Meaning if there's a variable "a" around, they capture its value. If you could convert such a function to a string, it'd be unclear how to deserialize "a" in this example. 20180922 18:10:29<+wesdiscordbot> You can load Lua code from a string: http://www.lua.org/manual/5.3/manual.html#pdf-load 20180922 18:10:50<+wesdiscordbot> (I would know, I'm the author of our current implementation of that function...) 20180922 18:12:34< vn971> @jyrkive: yeah, though I guess it'll take quite an effort to convert this to a solution of "global variables" problem that hk238 mentioned.. 20180922 18:12:46< hk238> btw the positive/negative style lists would be pretty useful once you get several combinable conditions 20180922 18:13:10< hk238> like allowed on "dwarf" but not allowed on "dwarf thunderer" etc 20180922 18:13:17< hk238> or whatever they might be tied into 20180922 18:13:43< hk238> I mean to avoid writing complex conditions 20180922 18:13:52< hk238> instead just having simple 1 dimensional lists so to speak 20180922 18:14:22< hk238> but then of course that doesn't allow very complex conditions either :D 20180922 19:58:21-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180922 19:58:27-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-umc-dev 20180922 21:00:16-!- mattsc [~mattsc@wesnoth/developer/mattsc] has joined #wesnoth-umc-dev 20180922 21:19:26-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has quit [Remote host closed the connection] 20180922 21:19:32-!- janebot [~Gambot@unaffiliated/gambit/bot/gambot] has joined #wesnoth-umc-dev --- Log closed Sun Sep 23 00:00:46 2018