Direction - CityGenerator/Megacosm-Generator GitHub Wiki

Now that I've gotten most of the generators migrated from CityGenerator to Megacosm Generator, I figured I needed to sit down and calculate what work is left. (For this exercise, I'm looking at whether or not I have a functional generator, not whether it is 100% functionally matched.)

New Things

On top of several brand new generators and now stand-alone generators, I've overshot the scope in a few important areas.

New Generators!

The following generators are either brand new, or have their own stand-alone page:

Everyone gets a Builder!

Pretty much all of the generators now come with rudimentary builders- they aren't perfect, but they're light years ahead of what citygenerator had.

Images!

Probably one of the larger TODO items is the addition of images to certain generators; I've already started on both magic item potions and deity holy symbols; I feel they add a lot to the generator, but are very time intensive and tedious to create.

A Database!

Now that I'm using Redis for the backend, I don't have to worry about content mass like I did with the XML files- if I have 104 different business types, I don't need to read and parse a 300k xml file into memory; I just randomly select a business name key, then query for it's information. Performance has been much improved.

New Data Format!

With XML gone, the data is in a much more regex-able format, which makes it easier for me to use with vim, and lowers the bar for new developers looking to assist.

Missing Generators

Looking at actual generator pages and modules, here's the tally of generators left.

  • AdventureGenerator.pm
  • AstronomyGenerator.pm
  • citygenerator
  • ClimateGenerator.pm
  • ConditionGenerator.pm
  • crittergenerator
  • EventGenerator.pm
  • flaggenerator
  • GovtGenerator.pm
  • MilitaryGenerator.pm
  • multiflaggenerator
  • MythGenerator.pm
  • postinggenerator
  • resourcegenerator

For comparison's sake, here's what I have done:

Moving Forward

So, what needs focus? Lets break them up into groups:

Content / Simple Text

Now that all of the content is in simple data files, adding a new line is super easy. Many of the generators are in need of more content, and this is something that anyone can do.

Images / Artistic Touch

  • More Holy Symbols Images - I have over 100 deity symbols with 13 variations. These need to be created.
  • More Magic Item Images - The potion bottle turned out great, but there's a lot more to do.
  • Business storefronts - I'd like to do something similar with businesses to give them a little flavor.

Layout / HTML

  • Layout Improvement - The current layout is responsive and minimal thanks to bootstrap, but is visually bland. It needs professional help.

Maps / JS

  • City Maps - Need to be reimplemented.
  • Country Maps - Needs to be reimplemented.
  • Region Maps with Encounter points - Needs to be implemented.
  • Flag display needs to be rewritten to work with new generator data.

Generators / Python

I'm going to break these down into groups:

Can Implement now

  • postinggenerator - An easy-to-implement generator, It just requires time and a review
  • EventGenerator.pm - An easy-to-implement generator, It just requires time and a review
  • MythGenerator.pm - An easy-to-implement generator, It just requires time and a review
  • GovtGenerator.pm - An easy-to-implement generator, It just requires time and a review
  • MilitaryGenerator.pm - An easy-to-implement generator, It just requires time and a review

Not Looking Forward to Implementing

  • AdventureGenerator - Needs to be more than just a title. Branch started for it.
  • ConditionGenerator.pm and ClimateGenerator.pm - I need to rethink what this means and where it pulls information from.
  • crittergenerator - I was unhappy with the results from this. Needs new data and method.

Last and Most Important

  • flaggenerator - Requires rethinking of the current implementation as well as the javascript frontend
  • resourcegenerator - a lot of data manipulation will be needed. Will potentially need to be split up
  • citygenerator - This is the motherload... The last one I'll work on.

I'm going to begin the process of creating tickets for all of this- if you're interested in pitching in, please let me know.