The best kittens, technology, and video games blog in the world.

Friday, October 23, 2015

Factorio interface improvements ideas

Kitty Boy by ameliamarie1 from flickr (CC-NC-ND)

I've been playing factorio a lot, including two campaign on camera (vanilla, bob's mods) and a lot off camera before that.

I like this game, but it really needs some interface improvements. Here's my list. This isn't about new fancy features - all of these should get into base game, and unfortunately most of them aren't the kinds of things mods can do. List in no particular order.

Electricity

We absolutely need a warning when some buildings have no power. Currently it's far too easy to disconnect power to some parts of the base, and never learn about it.

For that matter even if things have power, there should be a warning if power grid gets disconnected.

I know some people do both these things on purpose, but even then if you expected 20 assemblers and 60 inserters without power, and now warning shows you 600 different thing, you'll probably be interested. I don't think it would be any more intrusive than current "X turrets are engaged with enemy" or "X items miss construction bots" warnings.

Another nice thing would be to display if any electricity is flowing though an electric pole when mousing over it, to know if it's safe to remove it, but I'm not sure this agrees with how game is designed.

Electricity dialog

Electricity summary dialog needs to be redesigned. Factorio has just 3 kinds of electricity relevant objects (constant generators, daytime cycle generators, and accumulators), so it should be really easy to just print these numbers:
  • total demand (must not include accumulators)
  • available constant supply as % of demand
  • available daytime supply as % of demand (averaged over day night cycle)
  • % of accumulator storage available to make daytime supply work as constant supply
Information displayed on the dialog is currently perfectly reasonably before base gets solar, but it becomes rather useless and confusing once solar power and accumulators join the base, and the kind of numbers I want are really difficult to figure out in any way. Most of the time I discover I have a problem when I have a brownout.

Also time scale selection (5s etc.) doesn't match the relevant full day/night cycle option.

With numbers I'm suggesting all you need is to make sure available supply stays comfortable margin over 100% of demand, and available accumulator capacity comfortable margin over matching solar panels' needs. No more brownouts ever.

Logistics

Smart filters could really have negative filter option (move everything but X). Right now if there's contamination on a belt it takes manual cleanup - but even worse game doesn't provide any indication that belt got contaminated and it's often discovered only hours later when you're wondering why some part of your base isn't making what it's supposed to. Even small amount of contamination will eventually just completely block end of the line, where factories are located.

Placing at end of each line a smart filter into a chest (active provider chest once you get them) filtering out everything that's not supposed to be there would solve this problem completely.

Another nice improvement would be if I could copy settings from assembler into requester chest. This isn't a huge deal for vanilla, but for mods which require 6+ inputs per end game items, it would be so much easier to copy them this way, then remove ones I want to provide some other way than to select them manually, often wasting too much time trying to find which item is in which category (this one in Intermediates, this one in Bob's Materials, this one in Bob's Intermediates etc.).

By the way sorting items into category tabs really doesn't scale with mods that add a lot of new stuff, but it's not obvious what would be the fix, other than maybe just provide text search input for when I'm really lost.

Filtered storage chests

It would be nice if game had filtered storage chests. Right now existence of a single storage chest will affect the whole logistics network, and often I wanted to create them just for some specific items. Here's an example.

Junk slots were a huge improvement to the game, but I'm having trouble with them. It's very easy to pick up items I don't want while rerouting belts, so I need to junk pretty much everything. That means I either need storage chests in the system, which cause all kinds of issues as they're unfiltered, or dedicated requester chests.

The most obvious setup for chests would be:
  • requester chest for X next to start of X belt, outputting onto belt
  • passive provider chest for X at end of X belt, for any excess production, in case anything actually needs it
Except if I do that, logistic robots will just constantly move things from passive providers to requesters turning belt into energy-expensive loop.

It would be so much better if instead of requester chest, I could use filtered storage chest for X there.

Speaking of junk slots, it would be nice to designate some items (like let's say small electric poles and yellow belts) as permanent junk, to always go right into your junk slot whenever they're picked up.

Manual assembly

When queueing things for manual assembly - they should go to front not back of the queue. It's pretty common early game that I just queue like 200 inserters because I don't have assemblers to make them yet, only then to discover I need like 2 electric poles. Well, sure let's queue those 2 poles... and they go to back of the queue and it will take minute of clicking to clear what's queued before them.

I really see no downside of making request queue be request stack instead. Of course late game it won't matter, but early game it's a huge pain.

Fast clear and pause

For that matter, why not have a single button to remove everything that's queued for manual manufacturing if I change my mind?

I often have similar problem with bots. I have a bunch of requests setup like belts, medium poles, assemblers and so on. Unfortunately I need all my backpack space to move some things around, so I unlooad my whole backpack into a chest temporarily, and helpful bots immediately come back and fill it. I could clear my logistics requests and set them back afterwards, but it would be lovely if there was some kind of pause button.

Blueprint book

This is sort of obvious, but currently one blueprint per slot is really awkward, and just having tons of blueprints in some kind of single book would be just great.

Resolution setting in menu

This is mostly for recording - it's silly that I need to change my monitor setup to 1920x1080 any time I want to record some factorio, then set it back to full resolution once I'm done.

For that matter I would very much love to have brightness and saturation settings there, as my Happy Factorio mod could really be replaced by a saturation slider setting.

Thoughts?

These seem like very minor changes with significant positive impact on usability. Am I being wrong about any of these?

Can any of these issues be fixed by mods maybe?

Monday, October 19, 2015

Crusader Kings 2 minimods I've been using

Coy Taz 2 by DirtBikeDBA (Mike) from flickr (CC-NC-ND)

I mod pretty much all games I play. Some of the mods I publish on Steam Workshop or on this blog, but mostly they're for my campaigns.

The main problem with publishing them is that CK2 architecture makes it fairly difficult to run large number of small mods - there's a number of files which are responsible for pretty much everything (like religions.txt or landed_titles.txt  or defines.lua) and two mods trying to do seemingly unrelated changes which just happens to affect same files will likely conflict, and game won't even inform you of it.

I use mod builder to bundle all these minimods into a single one to avoid such issues. Without it, you probably won't be able to easily choose and mix minimods you want.

Then again, a lot of minimods would work just fine standalone, so if there's anything you find interesting here, just ask and I might publish it too.

This isn't a coherent mod like Fun and Balance for EU4, just a loose collection of tweaks. I used to have a collection for CK2+ as well, but that was many versions ago.

Other people's minimods

I found a lot of nice mod written by other people. Currently I use these from Steam Workshop:
  • Anime Portraits - I thought I'd run this for lulz, and I'm not terribly weeaboo or anything, but it's some amazing quality work and it makes the game looks so much better
  • Blue Duke - new portrait frames are dreadful UI, especially in how difficult it is to tell counts from dukes. This mod makes duke frames blue, and solves this problem completely.
  • DLC music for every culture - in game music gets boring after a while, so that increases the pool a bit. Often I end up turning off game music and using external music player instead anyway.
I randomly stumbled upon these mods as well, you need to download them from github:
  • Invitation Traits - it gives people (do nothing) traits showing if they'd accept your invitation or not. It's a hack, but it makes UI so much nicer.
  • Heir Traits - it gives people (do nothing) traits showing if they're heir to some title. Huge UI improvement.
  • Show Council - adds action which target's council, commanders, and other key figures. I spent so much time trying to find people's spymaster with game UI, it's huge pain in the ass. This is a huge time saver.
  • Notify on Adulthood - notifies you when someone comes of age. This is probably the most useful of them all. Getting notification when someone becomes of age, and can be married without their regent preventing such arrangements, or allowing your spies to reach them more easily now they're not tutored somewhere inaccessible, or knowing when a duchess reaches age when you can seduce her so your bastards can inherit her lands. It's a huge win. One thing it doesn't do is notifications a few weeks before adulthood, which would be nice for last minute guard swap tricks.
  • (there are two more minimods there but I didn't need them)

Minimods I published

A few minimods I already published:
  • Suez Canal - adds Suez Canal to the game, making areas like India, Ethiopia, and so on actually relevant
  • No Localized Ranks - uses consistent English names for all ranks instead of all the "walis", "exarchs", and "rajas". Game really should have option to turn this crap off.
  • No Localized Landed Titles - uses English title names, so it's "Denmark", not ridiculous nonsense like "Danmark". Game really should have option to turn this crap off as well.
  • No Dynastic Names - uses country names based on titles, not dynasty names. So It's "Persia", not "Abbasids". Another thing which should be in game settings.
And I've been playing with Modern Times mod which brings Crusader Kings to 1818-2015 timeframe, but that's hardly a "minimod".

Extra decisions

I wrote a bunch of extra decisions, mostly to setup the kind of campaign I wanted, they're not balanced or anything. Generally I make them player only, as writing sensible AI code would just be a lot of extra testing work.

Here's a quick list:
  • Become Republic - if you're male feudal ruler with coastal capital, it allows you to become a merchant republic. I used it in Republic of London campaign.
  • Switch to spouse dynasty - Crusader Kings is supposed to be about playing as family, but game actually wants you to play as family name, which I don't like much - and for that it introduces a lot of silly mechanics like matrilineal marriages. It would make much more sense if you just wanted what's best for your children, and who cares whose name they'll carry. I used it in Matilda of Tuscany campaign. This allows you to continue playing without game over as woman in regular marriage.
  • Make marriage regular / make marriage matrilineal - some hacks to change marriage type. There's some glitch that makes it trigger royal aid duty sometimes. For use when you want to play as your family, but your heir married wrong way.
  • Educate close kin - I just like educating all my kids myself, so  I made a mod that allows educating all dynasty members regardless of 2 limit. To be honest I probably don't need this and I could just as well send my daughters and extra sons to vassals for education, but I got used to it.
  • Banish traitor - you can banish imprisoned vassal traitors seizing all their lands and money, and people are OK with it. This probably goes too far into easy mode territory, but current situation is just silly (can't seize money, can't banish, can't execute, can only take one title, and often cant' take any titles as truce blocks revocations), with traitors risking pretty much nothing as they'll just claimant faction whoever you give their title to and get it back in zero time, and then you have vassal who hates you forever. I might come up with something more balanced someday.

User Interface mods

Crusader Kings 2 desperately needs a support for bigger monitors. All UI elements are ridiculously tiny, like when you want to give away titles after successful crusade, you have 100 titles and you need to use dialog box which displays 5 lines at a time, in random, even though it could easily fix 20+ if it expanded to fit the screen.

I didn't do any UI modding before, but one thing that got on my nerves more than anything else was that bar with active wars. I often have 20+ wars (like when reestablishing tributary relations on succession, game really requires starting wars in big batches) and it's impossible to see anything once you're past 5 or so.

So I wrote a mod that makes war icons box much larger. Well 3x as big if numbers I put there are to be believed, and it's amazing.

I wish someone just did a full big monitor overhault. If not, I'll probably fix a few more dialogs that annoy me particularly much.

Disable diplomatic interaction range. OK, this is not strictly UI only change, but it's infuriating to search characters only to be told you can't interact with them. They added this limit without making necessary UI adjustments to make it work. I've never seen any problems caused by this.

Mark decisions as high priority sensibly. In EU4 you can choose which decisions you want to be notified about in game UI. In CK2 that's hardcoded by "is_high_prio" flag. Which would be acceptable, unfortunately is_high_prio flag is really dumb, and asks you stupid decisions nobody ever wants like "conscript merchant ships" or "ask help to manage titles", but won't tell you that it's finally the month to have a feast, summer fair, or grand hunt. I made all decisions which are specific to peace time or particular month or Jews as high priority.

100% hereditary "Hunie" trait. This actually used to do something, but now I just add it in ruler designer (or via console). It's a 100% hereditary trait which does absolutely nothing except telling me which people are descendants of my original character, no matter which culture or dynasty names they end up with. Combos with seduction focus a lot (that's why the name).

Really disable fucking hints. There's option in game to disable hints. There are hints (mostly one at campaign start) that are explicitly set to ignore this flag. Seriously, what the fuck where they thinking? When player has explicitly chosen to disable all hints, maybe take a hint and stop showing hints?

Show all CBs in diplomatic map mode. Game decided that you don't want to know when you can tributary CB someone. I very much want to know that, as that's my favourite CB, so I want it displayed too.

Don't call dukes "kings" ever. A duke is a duke. Mercia is not a kingdom. It's modern silliness to call all such petty rulers "kings".

AI Changes

Make AI always reject ultimatum by claimant, elective succession, overthrow, and antiking factions - it is absolutely infuriating where you install a claimant, he starts at 0 troops (because he only got 1 demesne which has new administration, and no vassals will give him any due to short reign), so first tiny faction shows up, and your claimant folds to two dukes in a faction within week of getting the title because 2000 troops to 0 seems to him like a huge ratio.

Of course that ratio is bullshit as it ignored any allies and money, and the fact that if he waited a bit he'd get those troops, and vast majority of the time if he fought he'd have won - and often you can help him make sure that he does. And if he lost, so what? Worst case is what you'd get by clicking accept blackmail button.

I feel this is a huge improvement, as you can actually meaningfully press claims in foreign nations. In vanilla there's really no point to press anybody's claims except your vassals.

I made AI stop creating extra empires ever once it has one empire title. There is absolutely never any reason to do it.

This one change surprisingly has more impact than everything else put together. Made AI always prefer high tax and levy laws. Since Great Vassal Levy Nerf you absolutely and without exception should have high feudal taxes, as you'll be relying on (now a lot more expensive) mercs/retinue and your demesne troops. Non-Muslim AI in vanilla is hardcoded to go for zero feudal tax, which is ridiculous and it's according to a bunch of AI games the main reasons why Muslims are so OP - they just so happen to not do this dumb shit.

Making AI actually go for high taxes and levies makes AI realms way more powerful, without touching came mechanics in any way, just ai_will_do blocks.

Made AI stop joining elective succession faction unless it's Germanic. AI just loves this faction, and I've seen elective Byzantine Empire one too many times. Historically it was Germanic silliness, and it really doesn't belong in rest of Europe. Rulers can still pass such laws if they want, but AI won't join elective faction unless it makes sense for their culture.

Disabled overthrow khan faction, made nomads join independence factions instead. Hordes are totally OP, and big part of it is that they never have any internal problems whatsoever. Even if you weaken a horde the worst thing it can get is new khan. Not any more, now it can - and will - fall apart without strong khan to hold it. It doesn't come close to making hordes not OP, but now you have some tools to deal with it.

Easier title creation. Some titles have rules preventing AI of wrong culture from creating them. This just means that AI ruling over whole de jure kingdom will stubbornly remain a duke. Weirdly in case of Hungary it applies to player too, so if you holy war all of Hungary you can't recreate it as vassal kingdom in any way. Most of such restrictions are removed. (the must-be-republic restrictions remain)

Vassal Limit

I seriously hate this feature. Penalties are ridiculously severe (your tax and levies go down to zero for going just a few over limit), and you often have very little control over it - rebellions and gavelkind all count against your limit.

When you're playing as king you can transfer counts under dukes whichever way you want, most of the time (it seems to be blocked by vassal wars and rebellions, but sometimes it just gets blocked for no obvious reason).

Unfortunately in addition to all the other problems with the system, you can't transfer vassal dukes under vassal kings unless they're fully de jure under them - and due to usual vassal border gore that blocks even very reasonable transfers.

This is really infuriating, so I just added a bunch of decisions to allow me do so. For every vassal kingdom your vassal duchy borders, you can use "Transfer vassal under kingdom of X" decision, which works just like the usual feature, with opinion bonuses and so on.

Due to coding issues, it only works for already existing kingdom titles (it's technically completely separate decision for every kingdom title in landed_titles.txt), but it's fairly rare to have vassal with custom kingdom, and hacks to make it with custom kingdoms are probably not worth it.

In the end I increased vassal limit to much higher numbers, especially for emperors (25, 40, 50, 100 for duke, double-duke, king, emperor). Reasonable alternative would be to keep it where it was but reduce penalties drastically, in addition to not counting rebels and giving you more options, but I find this to be totally unfun mechanic, so I prefer to just get it out of my way.

Balance

Gavelkind demesne size bonus is way too small to compensate for bugs you'll be getting, and it's rounded down before all bonuses are applied so off "30%" the game claims you'll get you rarely see half of that (3+2=5 becomes 3*1.3+2=5.9, rounded down to 5, so much for your bonus). I just increased it to 50% to make it slightly less miserable.

Allow any number of vassal republics and theocracies. 10% limit is totally ridiculous. There were times when making every vassal a republic or a bishop was a legit strategy, but that hasn't been the case for ages, and 10% is way too low to have the mix of different types of holdings that was typical of feudal Europe - instead game ends up with feudal monoculture. Vanilla HRE for example - hardly a theocracy abuse case - starts already over 10% theocracy limit.

Reduced wrong government type tax/levy penalty from -75% to -50%. In the past there were cases where you needed to hold wrong holding type for fairly long time, and it would be nice if it wasn't totally useless drain on your demesne limit. To be fair, it's been a while since I last ran into this problem, and recent patch made a lot of such holdings (such as republics holding castles, feudal lords holding same culture tribes etc.) suffer from no penalty whatsoever, so I'm not sure it's needed, but then again, I don't see much reason to increase that penalty to vanilla level.

Faster de jure drift - 100 years is ridiculously slow. In theory it would be reasonable to wait a bit if requirement was just that title is vassal under you for 100 years or 51% controlled, but given typical levels of border gore it's close to impossible to control 100% of any kingdom for 100 years, and in typical vanilla campaign the only drift that ever happens is duchy of Latium to Papacy.

I reduced times to 50 years for duchy to kingdom (as fully controlling duchy is reasonable), and kingdom to empire to 20 years (by the time you control every last county your empire was probably dominant power there for generations).

I'm somewhat tempted to just throw drift completely and make de jure changes happen by decisions which you can (and AI would do too) use by spending some prestige and gold, just like creating custom kingdoms/empires (which already de jure changes in zero time).

Preserve cultural buildings. Vanilla automatically destroys all cultural buildings if ruler is wrong culture, which nerfs parts of the game which is already too weak. For example if you inherit some title from one Dutch vassal and German emperor, you don't even have a chance to give it to another Dutch vassal - it will get autodestroyed in a day before you have a change.

It's all just dumb, so I allow constructing buildings based on either province or ruler culture, and never get autodestroyed. Now in theory you could go through 20 cultures and build ridiculous number of buildings in your capital, but if you want to do so, sure, have fun.

Removed -30 foreign conqueror penalty. This is a silly thing they did to make Anglo-Saxons hate their Norman conquerors until everybody becomes English and happy about it. Unfortunately it really screws up rest of the world, where you can't have mixing cultures, so your vassals of wrong culture will keep hating you 200 years down the line or not, depending on how you got to get the realm. Holy War? Totally awesome. Claimant Faction (like Bohemian faction for HRE)? Hated forever by everyone in the realm. Of course the easiest way is to just get rid of vassals of wrong culture on first opportunity, and be done with it. It's also the only way, unless you're specifically England.

You still get the usual foreigner, wrong religion etc. penalties. This just removes this extra silly one. It would be reasonable if it only affected people who were conquered, and had a timeout like 20 years, but it last until end of the game and affects people twenty generations down the line.

Removed divine blood fertality penalty. For Holy Xwedodah!

Increase republic trade post limit by about 3x. Trade posts are what makes merchant republic merchant republics, and while they used to be overpowered, retinues and mercs got nerfed so much that republics are now a total pushover.

Allow trade post seizing plot in merchant republics with fewer restrictions - you think doges would not plot against patricians? This might be a bit too powerful, but vanilla blocking this completely is just silly.

Norde reinforcement speed reduced to normal speed. This means nomads when they get wrecked stay wrecked for a few years instead of miraculously recovering in zero time. This goes a good deal towards balancing nomads.

More flexibility

Allow free heir designation to everyone. This fits what feudal system was like better. Eventually things settled on primogeniture, but originally kings could designate whichever son they wanted to inherit different part of their lands.

Allow all religions to intermarry. This doesn't remove claimant invitation penalty, as that's separate (and not moddable as far as I can tell). Hindus won't marry you anyway as you have no caste, but everyone else will if they like you enough. Weird stuff happens occasionally as side effect, but rarely, and in any case weird stuff is what this game is about. I'd prefer to keep "must not marry infidel" but as modest penalty, not total ban. Unfortunately that's not moddable.

Allow all religions to seduce. If you're going to sin anyway, what do you care she's an infidel?

Allow unreformed pagans to go feudal. Requiring reformation is fine for player, but there's no way in hell AI can be expected to do that on its own.

Allow true cognatic succession for all cultures. It's really for roleplaying, it is mostly downside compared with agnatic-cognatic, and AI doesn't know when to make marriage regular vs matrilineal so level of weird things happening will increase drastically if you press this button.

Give everybody river access. People have been using rivers this way since forever. It also makes Central Asia somewhat more relevant.

Allow most minor decisions while at war. Feasts, summer fairs, pilgrimages etc. can now happen also when you're at war. It's silly that some peasant rabble in periphery of your realm should stop you from having a feast. The problem is that game treats even very petty squabbles as "wars", while only major ones should block such decisions.

Allow joining (almost) all wars of characters of your religion. What could be more fun than supporting rebels trying to overthrow a king you don't like? It also makes religious wars more intense as you can no longer use de jure wars to prevent other nations of same religion from joining enemy side. This is one of the best changes i've made.

Ruler designer reset. All traits free. It's up to your roleplaying choices to create characters you want.

Other changes

Kingdom of Italy is de jure HRE. CK2 de jure map is generally silly, with all kinds of imaginary de jure realms (Wendish Empire) and relations (Croatia de jure Byzantium, well...). This one on the other hand, is the most factual de jure statement of all - if "de jure" means anything, kingdom of Italy is de jure HRE. As a bonus this removes the eyeblight of one-kingdom "empire of Italia" from the map, as Venice and Sicily as de jure Byzantine Empire (which actually makes some historical sense). With 2 Roman empires already in the game, the idea of having separate teensy "Italia" is just painful.

Made culture conversion event not require neighbouring province of same culture. It still happens, just much more slowly, with discontinous territory.

Interested in any of that?

As you can see, these minimods are too disconnected to turn into one mod, it would take a lot of work to publish them all, and without mod builder to resolve conflicts a lot of these minimods wouldn't work together. But if you're interested in any of these mods, just message me, and I might publish it on Steam Workshop or elsewhere.

Code for all of them is on github, but probably not in the form which would be terribly useful.

Saturday, October 10, 2015

Writing replacement for magiccards.info

♥  My Girl ♥ by Trish Hamme from flickr (CC-BY)

magiccards.inf is probably the most useful MTG site out there. Comparing it to Gatherer is like comparing Birthing Pod to Search the City.

It has a few issues I wrote about, but it never bothered me enough to do anything more than complain on the blog. Unfortunately it seems to be abandoned, so someone needs to write a replacement, and that someone might just as well be me.

The plan

The plan is very simple:
  • get data on cards
  • write search engine which accepts magiccards.info style queries
  • write a web frontend to search engine
  • host it somewhere
  • get images
  • add extra functionality
  • avoid lawyers

Gathering data

Step one seemed like a messy Gatherer scrapping, but it turns out mtgjson website already hosts 99% of data we need. I manually entered a few more bits like which sets belong to which blocks, etc. There's still some missing bits like assigning frame types to individual promo cards, but it's really low priority.

For that matter I'm not sure magiccards.info is doing a particularly good job on it. For example what makes Unhinged Forests is:funny? No idea.

Writing search engine

I wasn't sure how complex it's going to be, but it turned out it's fairly easy. I wrote a search engine in Ruby, and put it on github. It can be used from command line, or as a library.

Vast majority of queries like a:"steve argyle" t:elf, e:gatecrash r:mythic t:legendary t:angel, f:standard pow>cmc c:g, or "Birds of Paradise" translate to very simple code.

The search engine still misses a few things. Biggest remaining problems are:
  • How to handle 2-in-1 cards (split, flip, DFC) - are these simple two cards which just happen to share cardboard (and color identity for commander), or is it one card. In certain way Wear // Tear should return true when asked cmc=1 cmc=2 (this query is why Counter-Top loves this card so much), in certain way it shouldn't.
  • What the hell expressions like mana>={u/g} even mean? mana is a reasonable query when both card and query are just made out of "normal" mana symbols - or even Unhinged half-mana symbols - but is {u/g}>={r/u} true or false or what?
  • How to make it a bit more performance, as loading 50MB JSON file takes about 3s on my laptop (and then individual queries are super fast) and well as too much memory for my liking.
  • Some fallback method to deal with spelling errors.
And there's still some small remaining bits. But generally, search engine is about as good as one on magiccards.info. A lot of improvements are already there. For example:
  • reminder text is stripped from Oracle, so you can now reasonably search for green flying creatures without hitting all reach creatures - and it also correctly makes Dryad Arbor match is:vanilla
  • support for b:Innistrad style queries for filtering cards by block
  • support for loyalty: queries
  • support for Unhinged fractional values
  • color identity queries ci:wb actually mean something now (in this case - can go into White/Black Commander deck)
  • support for querying random metadata mtgjson had like watermark:gruul
  • proper differentiation between cards with mana cost 0 and no mana cost (like lands)
  • some convenience features like not:black-bordered
There's still stuff to do, but I'd say it's about 80% done after one productive all-nighter.

Writing web frontend

Search engine is written in Ruby, so it would be fairly easy to do a Rails front-end. This runs into issue of how to present the data (just text, no pictures yet), write some syntax guide etc., but none of that is terribly complicated.

I could also do a silly thing and write a coffeescript version (or cross-compile ruby to javascript to run on client side) where all calculations are done client-side - which would incidentally completely solve hosting problem, as hosting static sites is really easy to set up.

Host it somewhere

Somehow it's been a long while since I last put any nontrivial website online myself, usually I use other people's EC2 accounts or servers for that.

It's mostly awkward from monetary point of view, as it could get significant traffic (especially if magiccards.info never recovers). For text it's not too bad, but for tons of images it could get painful.

I'll look at it once I get previous step done. It's probably something I should take a look at anyway.

Get images

Search engine doesn't necessarily require pictures - it could get away with just text data, card images are sort of more decoration than anything else. But it would be better with images. I'm not entirely sure where to get them from - presumably from wherever programs like cockatrice get them. Hosting them is a bit of a bandwidth cost risk.

Add extra functionality

Once I go through trouble of setting it all up, I could add some extra features like Sealed pool simulators. (I wrote a few before), or whatever I feel like. No point talking about it that early.

Avoid lawyers

Unfortunate side effect of doing anything Magic-related online is that technically WotC lawyers can screw you up any time they want - and sometime they go on a rampage with tons of innocent casualties, like fan art, draft simulators, etc.

It's pretty much random, as thousands of sites (blogs, shops, etc.) use Magic card images, it's well within boundaries of traditional fair use, and most of the time Wizards couldn't care less, but it would suck horribly to put all effort (and own money for hosting) into setting up such site, and then get it removed by a lawyer on a power trip.

Coming soon


Anyway, I'll keep you posted, or if you're impatient just check my github project. If you have any feature requests, github is probably the easiest way, or just contact me in any other way.

Tuesday, September 29, 2015

Modern Times mod for Crusader Kings 2 - feudal politics of 1818-2015


A few weeks ago I released very alpha version of Modern Times mod. It's been since updated, and now spans the whole 1818-2015 period, nearly whole century more than it originally did. A lot of countries got historical rulers, a lot of bugs have been fixed, and many mechanics like de jure realms and automatically generated vassals are now much more sensible.

If you're impatient, you can get it from Steam Workshop (more screenshots over there as well) or as direct download. Enjoy the game.

If you're interested in some behind the scenes information, keep reading.

What Modern Times mod is about

The mod intends to extend CK2 timeline. It originally just covered 1900-2015 period, currently extended to 1818-2015, but there's no special reason to stop there. I would like it to eventually extend back further.

I'm not sure how far back it will go. Probably not all the way to end of CK2 timeline, but there's no good reason to stop in 1818. It could easily go all the way back to Peace of Westphalia someday.

The mod has no plans to ever be AGOT style total conversion. Right now it touches very little other than province history. It will eventually add some period-appropriate mechanics for flavour, but it will be the same game.

The mod definitely doesn't intend to be "realistic". It is inherently silly.

Countries

The mod currently uses vanilla map, and tries its best to model independent countries on it. There's a lot of cases which are difficult to model. Most tiny countries like Kosovo, Lichtenstein, or small HRE minors are not included, but a few with particular historical significance like Free City of Danzig and Vatican are extended to cover whole county around them. Many real world borders cross province boundaries, so in game borders will look a bit weird.

It's often not clear who counts as independent country. Vassals and protectorates are mostly simply included in liege country. The mod currently doesn't use tributaries.

Border changes generally taken at peace treaties, or at least long term truces, so mid-war changes generally not taken into account.

Vassals are almost all automatically generated - with every de jure duchy getting one vassal (duke if liege controls majority of duchy, multicount otherwise).

A few notable exceptions like Soviet member Republics, Egypt under Ottomans, Jordan under United Kingdom, and devolved Scotland follow historical patterns, but for now this is exception rather than rule. British India is divided into vassal kingdoms ruled by locals as a somewhat messy workaround for vassal limit.

High levels of historical accuracy is probably not possible with vassals, as we have very few tiers to work with, most countries were historically divided into far more subdivisions than we have vassal limit to work with, and even for some really obvious subdivisions (like Sweden/Norway PU) it wouldn't make much sense to have junior partner as vassal.

Some countries have been renamed to better fit history - like "Wendish Empire" to "Commonwealth", or "kingdom of Bavaria" to "kingdom of Austria". For now no new countries have been added. Many historical "kings" and "dukes" went down a tier to better match their actual size. De jure map was adjusted somewhat, but it mostly follows CK2.

International organizations are not modelled in any way. For that matter if mod extends to times before HRE dissolution, HRE probably won't be modelled as a country, as it was a largely titular thing for very long time by then.

Characters

Mod currently includes 428 historical characters as well as 26565 automatically generated characters - rulers for countries without history, vassals, and some randomly generated children for everybody. Most important countries (including all empire-tier countries) all have historical rulers.

Rulers are generally monarchs, so you won't find people like Bismark and Mussolini. Presidents are generally preferred over prime ministers, but for a few countries prime ministers are used as a lot more prominent. As CK2 doesn't support gaps between rulers, aggressive backdating is applied, so for example Konrad Adenauer starts ruling Germany as soon as WW2 ends.

Automatically generated children are very important, as that's the only way dynastic politics can happen right away, instead of only starting with second generation - as is sadly the case in vanilla CK2, where almost nobody has any daughters.

For historical characters parent-child information should generally be present, but more distant relationships aren't, as they would require adding non-ruler characters, something we don't currently do. Game engine doesn't have any way to mark one king as brother, nephew, or grandson of another without reconstructing their family tree.

This also means that currently marriage alliances between different countries are not modelled. This might change.

Cultures and religions

The mod does very little modelling here - Protestants are modelled as various Catholic heresies, and no new cultures are added.

This results in somewhat excessive amount of religious infighting. It would probably be better to give Protestants their own branch of Christianity, but I'm not sure what would be good mechanics for that.

A few extra cultures might be helpful, but no plans to go into EU4 style twenty kinds of Germans.

Borders between cultures and religions are adjusted in a few places, but they're extremely rough, and they're especially wrong in Germany.

I'm considering adding some mechanic similar to EU4 Nationalism CB, which would allow some kind of national unification wars, as well as more elaborate independence/autonomy revolts than in vanilla CK2. Any such mechanic needs to be fairly restrictive as to not change feudal character of the game.

I've been trying to strike a balance between countries being overly stable and falling apart too easily. The mod is definitely not there yet, but then again, neither is vanilla.

Game Mechanics

Right now the only major mechanic is inclusion of Suez Canal minimod.

Pretty much all the complex code is in script generating history files.

Minor mechanical changes mod does is disabling dynastic names for all countries (so it's "Iran" not "Khameini"), and startup script to setting up sensible laws (no more gavelkind).

Saturday, September 26, 2015

Reviewing Magic sets is still hard



A while ago I wrote a post with a lot of examples of pros making rather embarrassing mistakes in card evaluations for Constructed.

It's been a few sets since then, and examples keep coming four times a year.

The usual disclosures apply - I'm posting it to show that reviewing sets is hard, and you should take whatever people say with a grain of salt, not to mock anyone.

Fate Reforged - Gurmag Angler

Constructed: 0.5

Technically can be a one mana 5/5, but I think the other delve options are just better, even going back to cards like Hooting Mandrills.

Khans of Tarkir - Treasure Cruise

Constructed: 2.0

I suspect Dig Through Time has made Treasure Cruise nearly obsolete, but Treasure Cruise is more splashable and is better raw card draw, so there’s a chance it sees some play.

Khans of Tarkir - Dig Through Time

Constructed: 2.5

I want this to be good and I’m going to spend a lot of time digging to make that happen, but it’s still an 8-mana spell to begin with. [...] It’s not quite Sphinx’s Revelation.

Magic 2015 - Aggressive Mining

Constructed: 3.0

This is an aggressive rating for a very interesting card. I could see this seeing zero play, because it certainly is hard to utilize (and very dangerous when implemented incorrectly), but the card is just so powerful that I can’t help but imagine it being awesome in the right deck. One way to approach this is to play it as the top of the curve in a deck that really doesn’t need lands past three or four. Playing this on seven lands makes it close to a draw six, and that really isn’t that bad.

Born of the Gods - Brimaz, King of Oreskos

Constructed: 4.0 (the only such rating in the entire set)

Brimaz is going be the one king to rule them all, at least in terms of white beatdown decks. In Standard, he's going to be an auto-include in Plains-heavy aggressive decks, and is powerful enough to try many different builds of such decks. He's even purrfect for some different Modern decks, and it's funny that both Bitterblossom and Wild Nacatl could both potentially be paired with Brimaz to great success. The size, cost, and abilities all line up so well here that Brimaz is just impossible to ignore.

Journey Into Nyx - Mana Confluence

Constructed: 5 (Fives are ever-present cards that heavily warp a format or see heavy play across multiple formats. Jace, the Mind Sculptor, Deathrite Shaman, and Tarmogoyf are good examples of fives.)

Many might not realize why this is so strong. It is because having perfect fixing for a three to five color deck found in a single land is worth some damage over the course of a game. Decks that play this will either have access to life gain, to offset the downside, or will be very proactive and aggressive, like combo decks, so that they don't care that they did three damage to themselves before killing you. This will be moderately played in Standard but heavily played in older formats wherever City of Brass has popped up in the past.

Friday, September 25, 2015

CK2 Modern Times: Take that Von Habsburg AAR

This campaign was mostly a test run for Modern Times mod, and it ended a bit earlier than I thought it would, but you might find this AAR enjoyable nevertheless.

Post 1 - Originally published on Google+ on 2015-09-05 20:19:36 UTC


Take that Von Habsburgs: Part 01: 2015-2021: Crusade for Constantinople

Time to playtest Modern Times mod, together with my usual tweaks, which are not included in Steam Workshop version, as they are matter of taste and not terribly related to Modern Times mod itself (the relevant ones - suez canal and no dynastic names - are both included in workshop version). Other mods used are DLC music for everyone and anime portraits.

There are some obvious ideas like playing Greece into Byzantium or ISIS into Blobbasids, but I have something even better in mind - taking what's left of Austria in 2015 and showing Habsburgs how it's really done.

The goal is to expand to all the lands Austrian Habsburgs had or wanted to have, that is at least all the Balkans, Bohemia, South Germany, South Poland, West Ukraine, and North Italy. I don't absolutely need North Germany, Netherlands, or Spain, but if I happen to accidentally marry into a claim on them, I'm going to press it.

Not playing with ruler designer, so my starting family is (all fairly poor stats, as random characters tend to):

• 45 year old emperor Filibert von Abensberg
• 25 year old princess Heilwiva
• 23 year old prince Ludolf
• 22 year old prince Werner
• 21 year old prince Udalrich

That of course means 5 marriage alliances:

• emperor Filibert von Abensberg - princess Maria Merkel of Germany
• princess Heilwiva - prince Cesare Ramberti of Italy
• prince Ludolf - princess Hodierne d'Altaville of France
• prince Werner - princess Adelajda Olelkowicz of Poland
• prince Udalrich - princess Helene Attikos of Greece

I spent ridiculous amount of time deciding these.

Before I even got the answers, pope called for crusade for Greece against Turkey. Of course I'll join, with my 12k against their 36k or so. I sent my troops there, did some fighting, and got hit by 12k fraticelli uprising at home, so I had to head straight back. At least the heretics had decency to lose half their units to first winter before I even got home.

Second attempt. It was fairly difficult to not only defeat a much larger army without losing my own troops (as my trust in my vassals' loyalty was not that high, and I've been bleeding gold fast while at war, so not a chance of setting up any kind of emergency merc fund), I also needed to make sure I have highest contribution - and apparently top criterion is how many troops you've lost.

Bektashi Order and ISIS joined Turkey's defense. I managed to destroy Turkey's troops without too many losses, but against ISIS I lost majority of my army - fortunately completely wiping out all their event troops.

Sadly the pope is greedy, so even though he absolutely loves me, he would not give me even one gold.

Prince Caesare of Italy went celibare after making one baby with Heilwiva, and somehow divorced her or something? I'm not sure what happened exactly. I remarried her to king of Greece, even thought it was a redundant alliance, as at 30 years, she wasn't that great of a match for people around 16, and other people close to her age were mostly already married.

And in six long years we finally managed to get it, with about 30% warscore constibution I got Constantinople, a city Habsburgs could only dream of taking.

All my cute plans about dealing with Balkan minors first got really delayed.

Of course that's not the only holy war happening - Germany is trying to take Skane, Greece got Cynenaica, Italy got Tunisia, Spain got Algeria, France is somehow losing against Switzerland, Israel got Damascus, Iraq goh Nefoud, Iran got Turkmenistan and half of Uzbekistan. Basically Sunnis are getting wrecked everywhere, other religions are more or less in balance.

I'm really tempted to follow up the crusade by attacking Turkey to kick them even harder while they're down. Or I could take a break until levies in liberated lands replenish a bit.

There's of course huge awkward problem that my lands of Austria and East Greece are completely disconnected.

And it's no longer clear that I should just move my capital there - it's all tech level 5 to Vienna's 7. After all, these are modern times.
 #ck2



Post 2 - Originally published on Google+ on 2015-09-06 14:21:48 UTC


Take that Von Habsburgs: Part 02: 2021-2033: First succession

The game is called Crusader Kings, and in I don't even know how many campaign this is probably the first time crusade is actually the key event.

My 3 adult sons got a duchy each - one of them died quite soon afterwards. I have since added two more daughters - Helene and Emma - Emma being somehow unjustly suspected of being a demon child. Seriously, people still believe such nonsense in 21st century?

I put a son of 1945-1960's king of Romania on its throne. It was race against time as by the time he got the throne he was 73 years old. France finally managed to take West half of heretic Switzerland in holy war, so I declared cleanup war before anybody else had a chance. He managed to have a daughter before dying two years later, but she had a tragic accident, and I now have to rule Romania.

My daughter Heilwiva, wife of king of Greece, died in her sleep, which somehow made Emma really happy. King of Greece's sister Helene died of pneumonia, so that alliance is over now. I have two girls of my dynasty with weak claim on Greece, but there's a strange lack of civil wars out there.

My 8 year old daugher Helene got infirm from stroke in similar circumstances. Come on people, how am I supposed to do dynastic politics when my daughters keep dying?

My wife Maria Merkel died in childbirth, so that's another alliance down. The best I could do was queen of Bohemia's younger sister.

Seriously, what is it with this literally medieval healthcare situation in 21st century?

Well, I didn't have any good claims, so I just did some minor wars - de jure county war on Slovakia, claimant county war on Bulgaria, and tributary war on Serbia. All three were allied, so I'd be fighting them all at once anyway.

Actually I had a very good claim - my youngest son had a weak claim to empire of Germany which was in civil war, but then I'd be spending I don't even know how long trying to keep him on that damn throne.

It was a very messy war as half of my troops were on one side, half on the other, with enemies (and winter attrition) in between.

To prove that some things never change, France got into war with the biggest blob on the map - United Kingdom, using interesting strategy where France sent all their troops to siege London, UK sent all their troops to siege Paris, and France took English heir hostage, presubaly in the siege.

And then, emperor Filibert dide at ripe (by medieval standards) age of 63, while trying to turn Serbia into his tributary, succeeded by emperor Udalrich.

Udalrich is 6/11/13/0/3, or in other words completely hopeless, and due to usual AI stupidity when his wife Helene princes of Greece died, he remarried some awful lowborn Turkish woman, and pope would of course not grant me a divorce with her.

His only redeeming quality is that his son and heir Filibert has weak claim to Greece, but with 0 intrigue that doesn't seem very pressable. Austria's only alliance left is now with France, thanks to marriage between Filibert's brother and French princess. Of course given typical life expectancies, that's probably not going to last long.

Oh and ISIS is trying to jihad king of Israes for Jerusalem and somehow losing, even though by numbers (Turkey, Arabia, Jordan, and some random count are in it in addition to ISIS) they should completely overwhelm it. Turkey is going for Bulgarian one county in Karvuna for some reason instead... It's a bit silly, but then again Bulgaria is not very strong and they believe in wrong kind of Jesus so nobody will help them.

Oh and Constantinople and my other Greek holdings are getting highly developed really quckly. It went from 5.0 to about 5.8 already, they will catch up with Vienna's 7.0 levels in no time, or about 25 years I guess.
 #ck2

Now in 3 instead of 2 parts


UK-France war


Post 3 - Originally published on Google+ on 2015-09-06 18:36:26 UTC


Take that Von Habsburgs: Part 03: 2033-2043: This is all weirdly historical

Duchess of Slovakia actually accepted vassalization with some handling fee, so presumably I didn't need that first war. Oh well. Also Teutonic Order, who recently built a castle in Slovakia agreed to be my vassals, earlier they wouldn't as a distant realm.

Viacheslava Putin had non-dynastic heir, and since he was non-dynastic anyway, she agreed to matrilineal betrothal with my daughter. Sweet. Take take, von Habsburgs!

Abu-Bakr al-Baghdadi got captured, so his jihad on Israel failed miserably.

I somehow convinced them pope to let me divorce my lowborn second wife, and marry princess of Bohemia instead.

King of Hungary was incapable due to some silly mishap, so I put a more competent ruler on Hungarian throne.

Just as soon as that finished, some traitors tried to force elective succession in Austria. Over my dead body. Time to get 8000 gold from bank of Jewgold, just in case that turns out uglier than I expect it to, even though that costs me 10% nationar tax modifier and -2 diplomacy until they're back, and gives arbitrary trait. Oh well. Apparently king of Israel could not care less. One of the things they should have considered.

The difficulty of the war is mostly my divided demesne, fortunately rebels are divided as well - and my sister in law queen Zofie of Bohemia is on my side.

The rebellion weirdly made Teutonic Order (who sided with the rebels) independent. That seems like a serious bug. And speaking of bugs, I discovered that Danube is not navigable for me. Fuck. I thought that got fixed in the patch, but apparently depending on your non-London capital, random subset of major rivers are unnavigable.

My wife Anna died, so I married her niece Kinga to maintain our alliance with Bohemia. She wasn't quite as skilled, so I had to let go of one of my counties, and oh look, claimant to duchy of Macedonia is asking for my help.

My supposed demon sister Emma, sweet 14/18/17/36/18, became of age and married emperor of Spain, in a regular marriage. This is the second time I got this very rare event chain, and second time it's someone who can't get my primary title. Oh well.

Sadly my non-dynastic niece who was next in line to throne of Italy got murdered on orders of her uncle who was next in line.

Oh wait, queen of Bohemia Zofie died, leaving some kid on the throne. Oh come on, I need to save poor Bohemians from such a weak ruler. Zofie's nephew Udalrich would be much better king. Oh and he just so happens to be my son. I had to break a betrothal to make that happen - arranging a matrilineal one with king of Ukraine's brother instead.

There was a 3-way civil war ongoing in Croatia, with even Belgium with its surprisingly big 18k stack wanting a piece of action, so I had to intervene, as it was traditional part of crown of Hungary. Sadly my claimant died of depression, so I had to try another one.

All of this is going along weirdly historical lines, if we ignored crusade for Constantinople for a moment.

I somehow got involved in far too many wars on side of emperor of Russia, king of Ukraine. I doubt any of my family members will get their thrones. Prince Simeon who ought to be emperor of Russia and make babies of my dynasty with my daughter is just double duke, presumably due to some faction nonsense, his sister being on the throne. Well, there's always a chance.

I'm seriously tempted to get crowned king of Bavaria and get that from Germany - France, Spain, Poland, Ukraine, Russia, and Georgia are all my allies and at least some of them won't be busy.

Pretty much all of North Africe west of Egypt got conquered by various European powers - Greece, Italy, Spain, and Portugal. Even Israel blobbed a little and Shiite Iraq got Medina (but not Mecca yet). Among all this it's surprising that ISIS didn't lose any of their territory yet.

It's all been going really well so far.

Oh and France somehow managed to win their holy war on duchy of London.
 #ck2

This looks shockingly historical. Add British Egypt and you'd be thinking it's real 1914 map.






Post 4 - Originally published on Google+ on 2015-09-08 14:18:44 UTC


Take that Von Habsburgs: Part 04: 2043-2049: Going East

I fixed it so that all major rivers are navigable regardless of fort level - this is really great for me, as my demesne is divided between Vienna and Constantinople, and it's seriously silly that you're blocking rivers in your own territory. And I also installed mod that fixed duke frames to be distinguishable from count frames.

So there was fun dynastic story here:

• empress of Russia married king of Georgia, with son being heir to both
• as son was non-dynastic to her anyway, she had no problem marrying him matrilineally to my daughter
• somehow he did not become emperor of Russia, just a double duke, but he's still heir to kingdom of Georgia, so if that works, and a few lucky coincidences happen, my dynasty will rule Georgia

Now, this matters, as I have choice of a few actions:

• crown myself king of Bavaria (which I finally can, now that Croatian parts of Bavaria get me over 50%), then press claimant on duchy of Bavaria against Germany to wreck them, using the French to do as much fighting as possible. I need to wreck Germany and Italy at some point to restore lands I want, France is probably fine.
• turn Balkan minors into tributaries. Last time I tried it it was rather hard, as they were willing to fight till 100%, and in Modern Times sieges take longer so it's hard to get that 100%.
• holy war Turkey to get closer to Georgia, which is a potential future dynastic realm. Or for that matter holy war everybody near Austrian North Cyprus

Maybe I could do two of those at once, not really all. Well, Bulgaria suddenly started having willing claimants and Danube was suddenly navigable, so the thing to leave for later is holy wars I guess. Oh wait, while I was pondering things Bavaria became no longer pressable, and Bulgaria is on my side in some silly Ukrainian war. Oh well, planning is complicated...

So instead I cleaned up a bunch of Balkan counties, and went for Cilicia, while Turkey was already fighting decadence revolt, Shiite holy war, and Yazidi revolt.

My son lost Bohemia to some rebellion (and embarassingly I had to pay 110 for his freedom), but king of Bohemia is oldest son of Polish king and heir to kingdom of Poland somehow, so I'll let that pass for now.

I accidentally inherited Teutonic Order and all its baronies when its grand master died, and I couldn't give it away, so I used console to give it to some random dude. Then I gave them a bunch of spare baronies in Cilicia - the whole duchy was otherwise home to a bunch of claimants to various titles, ruled by my son who lost Bohemia before.

After some silly civil war in Ukraine and a series of accidents that left a baby girl on the throne, I decided to intervene to make my son in law the rightful king.

Oh and thanks to a series of freak accidents, king of Georgia (heir to empire of Russia, but that could change if current emperor survives to age of 16 and has some own babies) is matrilineally married to my daugher, while heir to empire of Italy is married matrilineally to my sister.

There's also a lot of fun religious arrangements, as emperor of Russia is Catholic, his heir and uncle king of Georgia is Orthodox, then his son is Catholic again.

France tried to holy war United Kingdom again, this time it was a total failure.

Oh maybe it's time to end all this silliness of expanding one duchy or kingdom at a time and put dynastic claimants on thrones of empires of Germany and France. Spain and Poland ought to help me with it.

In best case scenario, Austria, Germany, France, Italy, and Russia will all be of my dynasty in two generations, Poland, Greece, and Bulgaria will fall into my realm by inheritance to my various vassals (with some armed negotiations), and I'll figure out some way to clean up Serbia later.

Other than Portugal and Belgium I think I have marital connections of some kind to every significant Catholic country in Europe, and quite a few heretic ones as well.
 #ck2

Austria stronk


Netherlands and Norway went Catholic when I wasn't looking? Russia as well, but at least I noticed that. Sunnis continue getting wrecked by everyone.


WTF is going on in India?


Post 5 - Originally published on Google+ on 2015-09-11 22:31:39 UTC


Take that Von Habsburgs: Part 05: 2049-2054: Family First

I seriously regret that I did't give everybody in my initial family hunie trait, it would have been much easier to figure out who's related to our dynasty.

Also as the script reuses dynasty IDs instead of just making new dynasty with same name, there's tons of people of historical dynasties. Like rulers of Ukraine are Rurikids (and get insane levels of dynastic prestige), and my former spymater (30 intrigue and didn't hate me) was same dynasty as me, even though not directly related. His on rules over lands we liberated from Swiss heretics now.

Oh and I figured out why I inherited Teutonic Order - my script that changes all titles to primo mistakenly also changed holy orders as they're technically feudal.

I had so many claimants it was hard to choose - my brother had claim to Germany, and his wife had claim to France, so it was one way. Alternatively I could push claim of any of my 3 nieces to France instead. Let's go for brother&wife approach. All that leads to the question - why the hell am I not playing as him anyway?

It turns out none of my allies were interested in helping me. So much for networks of dynastic alliances.

Oh and I learned that in this mod the optimal way is to completely ignore all peasant revolts. Time to siege is based on fort level and difference in technology. As tech difference is about zero but fort level increases and increases, sieges are rather slow in general. On the other hard peasants have technology 0, so they suffer from both huge fort level and huge technology based penalty, giving them ETA for a single castle like 15+ years. I could literally keep buying fort level upgrades while they siege it.

My vassal king of Bohemia inherited Poland due to some dynastic accidents. Then a few accidens later both titles went to my wife. She's still a bit annoyed by my alleged involvement in her cousins' accidents.

Pope declared crusade for England - there's only this tiny problem that 3 biggest Catholic countries are busy right now.

France had to be won first - otherwise my brother's wife would leave for his court, and that would be it. Of course she immediately needed help with rebels, and I so absolutely despise how you can only offer to join one war.

And then I was finally able to press my brother's claim. I lost 3 counties this way, but who cares really.

So right now, biggest countries:

• Austria - me
• Germany - my brother
• France - my brother's wife
• Spain - my demon-sister's husband (not matrilineal, won't by dynastic)
• Italy - my sister's husband (matrilineal, dynastic heir)
• Greece - not in line, but tons of dynasty members have claims
• UK - getting wrecked by a crusade
• Georgia - my daughter's husband (matrilineal, dynastic heir). Orthodox, but heir is Catholic.
• Russia - heir is king of Georgia, but that's only because emperor is 14 and has no own children yet, probably won't go into dynasty. Also already Catholic.
• Jerusalem - Yazidi liberation revolt of all things got it, Israel is reduced to one duchy in Syria

Oh wait, that's wrong. Empress of fucking France already folded to faction demand.

For fuck's sake, what's the point of pressing any faction demands if every fucking claimant just folds, even while they have massive army and ridiculously powerful allies and rebels are just like a duke or two?

This is supposed to be dynastic game, but the only claims that are of any use whatsoever are your own.

I have 3 nieces with claim to France, but what is the fucking point, if they'll stay on the throne for a week, then fold to second revolt (as I can only join against the first)?

I really need to investigate these two things:

• How to make newly installed claimant at least try to fight, not fold to every fucking faction. If it was at least something like lower crown authority, or even independence or elective succession, it makes some sense to fold to that - I can't think of any good reason to ever fold to claimant faction without a fight. In worst case you can just surrender.
• How to allow joining your ally's all wars, not just one. That will require some fancy scripting, but the game really needs this.
• And for that matter is there any way I can side with my vassal against rebels? I know Game of Thrones mod has some mechanics for it. At least they usually lose to faction rebellion, they don't just fold, but still.

Because right now major mechanic is just broken.
 #ck2

Dynasty





Pictures from Chicken Week

As I said before, this is now a food blog. Well, at least sometimes, I still seem to be posting about video games or programming every now and then.

So after a disaster which was vegan week, I decided that I still like making food pics, but I'd prefer something much easier and more casual. So how about a chicken week? It was actually so delicious I kept going for nearly two weeks worth of pics. If you're really curious, the entire photo album of everything I ate is at flickr, with comments for each pic.

Let's start with selection of culinary highlights.

Salads


The most obvious thing to try was chicken salad. Just throw some cooked chicken with a bunch of vegetables and apples, and it's a fast to make and pretty decent food.

Chicken with fruit


I really like using fruit in my cooking. My greatest discovery was just how delicious chicken with watermelon is. I had that many time since then:
Of course I had chicken with oranges (it unfortunately came out a bit blurry):
And something I do a bit less often, grapes:
 

Chicken with vegetables


There's only so many types of fruit, sometimes more traditional version of chicken with vegetables would do:
Or this one:
Vegetables are generally steamed, and chicken pan-fried. I used to steam chicken together with vegetables under assumption that it would be easier, but amount of mess meat makes while steamed made it totally not worth it.

Eggs are just baby chickens


We don't need to wait for the chicken to grow up before eating it.
Here's Cloud wondering what the hell am I doing, eating silly human food instead of obviously more delicious cat food:

Chocolate eggs are kinda eggs and that's kinda chicken, right?


Obviously just because it was "chicken week" didn't meat I planned to go without at least some chocolate. Chocolate eggs sort of vaguely fit the theme. Also it's the first food pic on this blog that's totally illegal in certain unnamed countries:
 I also tried to make meringues. That was a miserable failure, so I got some from the shop instead: 

The end


To conclude this series:

  • chicken is delicious
  • watermelon is perfect with chicken
  • the distinction between fruit and vegetables is just another way the system lies to you

Wednesday, September 23, 2015

Let's Play Happy Factorio with Bob's Mods

I really like Factorio, except for aliens and sad graphics.

I wrote a mod which recolors Factorio to be more cheerful (most recent version downloadable from factorio forums), I wrote a tool to recolorize other mods (it's on github but not really easy to use, ask me if you need it), and a mod to fix night lights and pollution map (I should probably release those as well).

So now the only thing left to do is install a bunch of mods and play. Here's the full playlist, and here you can watch the first video:

New videos, about 25 minutes each, are going to be posted once every day, on same time each day.

Mods used:

  • Better Visuals 0.0.1 (unreleased yet)
  • bobassembly 0.12.3
  • bobelectronics 0.12.3
  • boblogistics 0.12.4
  • bobmining 0.12.1
  • bobmodules 0.12.4
  • bobores 0.12.4
  • bobplates 0.12.5
  • bobpower 0.12.3
  • Happy Factorio 0.12.8
  • Larger Inventory 1.0.0
  • Loot-able Rocks 1.0.0
  • peacemod 0.1.0 (I changed json file to make it compatible with 0.12, but it's basically same version as 0.11)
  • Terraforming 0.12.1

All mods are available from Factorio Forums.

Enjoy the base :-D

Let's Play Civilization 5 as Poland - in Polish

I tend to be pretty close to 100% English speaking online, but I wanted to record something in Polish - and what could be better than Civilization 5, the only game where Poland is the strongest country of all.

Of course I'm still not terribly happy about sudden death of my Germany campaign to save game corruption. I think the most likely explanation is that mods somehow got upgraded mid-campaign, which is something I might have clicked accidentally. I'll make extra sure not to do so this time.

Anyway, here's the playlist, and here's episode 1:


New videos, about 25 minutes each, are going to be posted once every day, on same time each day.

Friday, September 11, 2015

Modern Times mod for Crusader Kings 2 - enjoy feudal politics of 1900-2015

IMG_7142 by MankiProject from flickr (CC-BY)

Early versions of the mod have been available for a bit over a week on Steam Workshop, but I'd like to make a proper announcement and notes.

The mod shifts Crusader Kings 2 to 1900-2015 timespan, with same map, reasonably accurate borders (as much as possible with vanilla provinces), some historical rulers, and automatically generated vassals, families, and rulers which I didn't write down yet.

Otherwise, it has same map and mechanics. It is not and has no intention of ever being a total conversion mod. It might someday expand timespan back a few decades or maybe even centuries, and it will probably contain a few tweaked mechanics eventually, but I'm not making anything like AGOT.

You can get it from Steam Workshop or as direct download.

Characters

The intention is that all independent rulers will be accurate in some future version - for now all 10/10 emperor-tier countries but only 13/75 lower tier countries are done. You can - and should - use ruler designer to come up with your ruler if non-historical one is used.

Who counts as a "ruler" is somewhat ambiguous, I took monarchs if possible, and then usually presidents over prime ministers, unless prime minister is much more prominent (as in let's say Germany). Interim presidents and no-ruler periods are all disregarded, with next ruler being backdated to whenever previous ruler's reign ended.

Everybody else - regional vassals, and children of various landed characters - has been generated randomly.

This start is in some ways already better than vanilla starts - especially in 769 and 867 but also in later start dates outside core of Europe nobody had any daughters or sisters, so there was no way to do any dynastic politics until second generation. In this mod as duke of Bavaria you can marry daughter of king of Netherlands, or whoever got rolled randomly there.

20% of rulers (except Muslims and popes) and 50% of children are female.

Even historical characters get randomly generated children (in addition to any historical children they might have).

I tried to model parent-child relations between rulers, but anything more complicated than that I left out for now, so they'll just be kinsmen. Characters with same name (historical or generated) in same country are treated as part of same dynasty, characters from same dynasty in different countries (like kings of Sweden and Norway) are currently treated as independent houses, and any intermarriage between royal houses of different countries is not yet modelled. It will probably change at some point.

Traits of all characters are generated randomly by the game whenever you start. So if Jacques Chirac turns out to be a greedy impaler attractive dwarf in your game, that's not mod's doing.

The only character with special treatment is ISIS caliph Abu Bakr al-Baghdadi who gets cruel zealous and 10k event troops. Without that ISIS falls too easily, and we wouldn't want that, right?

I might add special treatment to a few more rulers, but it can too easily get into silly arguments if someone was a genius or an idiot based on political preferences, so I'll keep most randomly generated.

Countries and their names

The mod tries to use the most geographically appropriate landed title, and then rename it if it needs be, using same trick vanilla uses to make "kingdom of Italy" continuation of "kingdom of Lombardy" (k_italy both).

So for example Romania is a kingdom-level title, corresponding to "k_dacia" (named Wallachia) in vanilla.

De jure map has not been touched yet, but it will need to be eventually. There are a few things I'm not terribly happy about, like how HRE and Byzantine Empire still exist de jure, and how post-1918 Austria (e_carpathia) is wholy outside its de jure territory.

Decision to make something empire, kingdom, duchy, or county depends primary on its maximum territorial extent in mod's timeframe. That's why Belgium (d_frisia) is just a duchy, while Austria (e_carpathia) is an empire.

All empires are: United Kingdom, Spain, Ottoman Empire/Turkey, Russia/Soviet Union, Italy, France, Germany, Austria, India, Iran. (names of Russia and Turkey change depending on bookmark).

The mod includes no dynastic names minimod, so Arab/Turkish/etc. countries use territorial names too.

One thing I couldn't fix was making ISIS keep "The Sunni Caliphate" as its primary title. It quickly creates territorial duchies of Syria and Mosul and uses one of them as its primary, even though game files explicitly tell it not to do so. So you'll see two Syrias (k_syria and d_syria/d_sunni) next to each other quite often. I think I should at least rename "d_syria" to duchy of "East Syria" or something to reduce silliness a bit.

Arabia (k_arabia) is called "Arabia" not "Saudi Arabia", as nothing guarantees that their dynasty will stay in charge.

As map covers only tiny part of China, instead of any kind of empire of China mod only includes kingdom level Xinjiang - which is early bookmarks includes Mongolia. I'm not terribly happy about it, but there's little I can do. Chances are high Paradox will add China in some future expansion, making this problem go away.

Border changes generally correspond to peace deals or some long term truces, so there's no crazy border changes every month during WW2 etc.

Some small countries like Kosovo, Lichtenstein etc. just don't fit the map, so they won't exist in the mod at all.

Holy Orders

All holy orders which exist at end of CK2 vanilla timeframe still exist in the mod. In addition to that Templars exist (check any conspiracy site for reasoning), Zealots exist as Israeli vassal in any bookmark where Israel exists (mostly to prevent them getting overran by Egypt day one), and Assassins get un-destroyed and exist as vassals of Iran in any bookmark after Iranian Revolution.

Internal Organization

Every county or duchy level independent ruler holds everything personally.

King/emperor level rulers hold everything in their capital duchy personally, and have one multi-count vassal per de jure duchy.

As gavelkind would be ridiculous, everybody starts at agnatic-cognatic primogeniture, except Muslims (agnatic open), and various special titles like papacy and holy orders.

All countries start with zero crown authority, papal investiture, as well as level 2 city and feudal taxes (AI will generally go to no feudal tax ASAP which is silliness inherited from vanilla, I might include bugfix for that in future versions of the mod).

Emperor tier titles start at zero centralization, everybody below that at medium centralization. This means that some titles start over vassal limit, and some - especially United Kingdom (while it still holds India) and India - start drastically over vassal limit.

This will hopefully be fixed in future versions, with vassal multicounts being replaced by vassal dukes, multidukes, or kings for countries where it's sensible.

Mongolia, Kazakhstan, and Uzbekistan are marked as nomads - so they'll start as nomads if you play with Horse Lords DLC, or tribes otherwise. Other countries (like Moldova) have nomad flag removed.

Provinces which are tribal and end of CK2 remain tribal in mod, even though it's a bit silly.

All provinces with bishopric capital get their capital moved to castle, except Rome. City capitals remain as such.

Populations

Population culture/religion is mostly what it was at end of CK2, with some number of rough tweaks for worst silliness.

Various Protestants are modelled as Catholic heresies. Half-Catholic countries like Germany are generally treated as Catholic for now.

The problem with accurate modelling of all that is that religious and cultural minorities are for most part spread out geographically, but CK2 expects them to be regionally concentrated, so nothing like correct modelling is possible.

Technology is based on sensible gradient - British Isles > Western Europe > Eastern Europe > Middle East > India/Africa/Steppes (each group one tech below previous). France and Germany regions are in Western Europe tech in 1900, but in British Isles group in 2015.

Game generates buildings in holdings based on technology levels.

Extra game mechanics

The mod includes Suez Canal minimod.

There's no European Union / NATO / WW2 etc. as we can't add extra tier of titles, and it would take very complex scripting to do anything useful this way. Maybe one day I'll set this up.

If you're playing as Norse (via ruler designer) character, you won't have access to most major rivers, as they stop being navigable when provinces they neighbour reach fort level 10, which most of them start at with mods' tech levels. I might change that in the future.

Bookmarks suggested by the mod (1900, 1914, 1920, 1938, 1945, 1975, 1991, 1999, 2015) are in no way special.

Future versions of the mod might include a lot more mechanically.

Mod might be compatible with a lot of non-map-changing minimods.

Code and Bug reports

Feel free to contact me in any way whatsoever about bug reports or questions (email, blog comments, Steam Workshop, reddit etc.).

Bug reports that some country's rulers are missing are not necessary, as I know that already :-)

If added historical rulers have wrong dates (interim rulers intentionally not included, so backdating here expected), names etc. or borders are wrong (in a way that's not simply artifact of vanilla provinces falling between two countries), that's kind of mistake I'm most interested in hearing about.

Code generating the mod is available on github. Most interesting files are probably characters and borders.

There is no guarantee that mod updates won't screw your existing campaign in some way, so you're probably better off using direct download version instead of Steam Workshop version (which will automatically update).

Sources


My primary sources were Wikipedia and GoaCron. I checked with a few other sources like 2015 mod by King of the Romans too.