26.4.15

Two Years of Corn



Download: Corn 1 Year Ago

Download: Corn Today

WARNING: You need something called love2d installed to run these files.

The 19th of February 2013 is the official day that I started working on Corn: The Game of Classical Political Economy. That was a while ago now. Enough has changed since then that 2013 seems like longer than two years ago somehow. Last year around late February I provided a short summary of what I'd worked on in the last year since the start of development. For a number of reasons, there's less to report this time around. Even by this time last year I'd slowed to a steady crawl but the pace these days is every-once-in-a-while. My most recent productive period was the 16th of April. I'm working on another free-time coding project now that should be wrapping up in the next couple months so after that I'll be able to bring my attention back to Corn

What's Changed?

I actually had to look back over my own changelog to be sure. I've added a lot of little things- factories work completely differently now and their GUI elements have been re-designed. Goods can take any number of seasons to be produced, and consume any amount of inputs. Production can require power (only river power so far) or not. Or it can take multiple workers to produce one good. Even this isn't fully finished yet, as the build above demonstrates (try brewing some beer and see what happens just before it completes its production cycle). Other stuff: forests can be clear-cut, goods are stored in the region where they were produced, there are theoretically several player roles possible (only one works at all), the graphics are totally redone (I didn't draw them, thanks to my pal prinny for that. especially those trees god damn...), the way maps are handled internally is new and hopefully more data-driven, etc. Actually looking back I spent the last year tearing apart and half-rebuilding basically one small part of the game. There's the executive summary of the last year plus.

I have made progress on the design front. A few things are a lot clearer than they were before, partially because of all the reading I've been doing on the side while the code languishes. In particular I've written a document that lays out a few of the key ideas and the things I'd like to do to implement those ideas. I'll end this rather meager progress update with that document. See you next year hopefully with something more exciting.

Corn Design Outline February 2015

1: what is corn supposed to be?

corn is a strategy game set during the transition from feudalism to capitalism, in a game world that is not strictly modeled on any particular time or place but is designed to simulate the overall dynamicss of the Atlantic world during the early modern period through the age of industrialization.

there are several key concepts in the game.

- the concept of modes of production: different areas of the game world are run differently. town-centered areas produce goods in factories or shops for sale at a market, for a price. individuals then take the price they recieve for whatever they produce and attempt to re-produce themselves: hiring labor and buying goods to keep themselves and their businesses alive. areas centered on feudal manors operate along lines of custom instead. peasants own the land they till and it cannot be sold, but they owe a portion of their produce to their lord. the lord in turn maintains an armed retinue to battle against other lords and defend/repress his peasants. other possible areas include those run by a church and those which are owned by a tribe.

- the concept of a real economy: key to the idea of modes of production is that people produce things in specific ways in specific places, trade them/tribute them, and ship them either to a market in their own area or to a market elsewhere. goods are not automatically stored anywhere and everything must be paid for and tracked until it is consumed. eventually, once the basics of production, sale/tribute and consumption are finished, the goal is to have an economy that includes things like credit, shareholding etc.

- the concept of role-playing: the game is strategic but the player has to pick a certain historical role. there is no 'guiding spirit' ala age of empires or 'eternal monarch-president-premier' like in victoria or eu. players pick from several classes and based on which class they pick they have access to certain responsibilities and rights according to their role. merchants can sell but can't run a fief. feudal lords can't kick their peasants off their land- easily. the idea is similar to mount & blade: a wide-open semi-historical world with multiple interlocking systems that players enter at different points. no one is forced to be a feudal lord the entire game. they can change their role (just as in mount & blade you can support a pretender or become a vassal) but this involves a lot of hard work and careful planning. also, the world is changing around the player as new areas are discovered and modes of production shift, rise and disappear over time.

there's a lot more but that is the basic goal.

2: what is the plan for corn?

the plan is to build each 'mode' along with its corresponding player-class, one at a time, until all of em are finished. right now the focus is on the merchant class and the town-centered area with a more or less capitalistic mode of production. that means that labor can be hired or fired, nobody owes anyone else anything because of customs, property is totally alienable and the product belongs entirely to the owner of the thing that produced it, and trade can be conducted freely between different towns. later on the feudal mode, the slave mode, the tribal mode and maybe a couple others will be fleshed out. longer term, things like map discovery, governments and flourishes like an age-system (advancing ages ala age of empires, but based on key events like 'discovering the new world' or 'founding a totally capitalist nation') will be added. none of these systems are supposed to be very complex. the idea is to keep things simple and uncomplicated but have rich interactions between different areas of the game.

3: what is done so far?

very little. part of this is because I work and of course suffer from near-crippling levels of ennui and anhedonia induced by our miserable condition as alienated beings under late capitalism. the other part is that a lot of this comes together from reading I do which is a fairly drawn out process. the idea of including slavery, which i now think will be fairly important to the game, just came up a month or so ago and i've been working on this in one form or another since 2013. my initial design for this game bears almost no relationship to the document i've just written. that's not really a problem since nobody's waiting for this game to be finished and i won't owe anyone money for either not completing it or taking ten years to do so. anyway heres a short list of what has been accomplished

- scrolling map and basic ui. - tiles that produce things. coal, wood, wool and corn are produced in tiles. - factories (currently being refactored) that are owned, pay wages, and produce goods with specific schedules and inputs. - basic outline of towns and manors. - military units and pathfinding. - graphics (shouts to prinny dude)

this has taken two goddamn years lol. I am closer today to having something to actually play (when the merchant class is finished). hopefully when that comes online there will be a more gradual and visible process of improvement. until now I've been struggling to establish the basics (which are fairly complicated and have to be in place all at once). when the game is playable it will probably be easier to work on.

4: can I help? can I 'play'?

yes. check out the code from github if you want and poke around. ask me any questions you have. email is pajari at gmail dot com. technically the game needs the latest version of a program called 'love2d' to run. install that, download the source, rar it, then rename the extension to .love and play. i haven't tested it on many resolutions or systems but it should work fine.

5: thanks for reading