Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Task: Random galaxy generator #8

Open
joulupunikki opened this issue Apr 27, 2015 · 0 comments
Open

Task: Random galaxy generator #8

joulupunikki opened this issue Apr 27, 2015 · 0 comments

Comments

@joulupunikki
Copy link
Owner

Collaborative task 4

Random galaxy generator

Motivation

Veteran players may have thoroughly explored existing maps. To provide a random galaxy generator, more or less like in EFS, would be a highly desirable feature, but possibly among the hardest of tasks for a more EFS like generator.

Implementation sketch, part A: integration and format
  • Integration options:
    1. Integrated into Phoenix. Java only.
    2. External program. Any language could be used, as long as execution is possible on BSD/Mac, Linux and Windows.
  • Galaxy format options:
    1. Phoenix galaxy format (ie. Java class hierarchy.) Java only (unless you know how to create serialized Java objects in your language of choice.)
    2. EFS galaxy format (currently, the format is reverse engineered enough but poorly documented.) With this, existing tools for editing EFS galaxies could be used for fine tuning created galaxies.
Implementation sketch, part B: level of randomization
  • Full: a complete random galaxy generator, like in EFS
  • Partial: modular functions to randomize/alter aspects of existing GALAXY.GAL files
    1. permute planet locations in existing jump route network, maybe just permute the house home worlds, ie Li Halan may be next to Stigmata in the standard galaxy, permute planet names to hide planet identities until a ship is in orbit.
    2. alter jump routes (for multiplayer, this might require some sort of balancing)
    3. permute rebel/other force locations and composition on a planet
    4. mirror planet maps north/south and/or east/west
    5. permute/randomize non-harvesting structure locations on a planet (might not be a bad idea to optionally randomize locations of ruins in all games)
    6. hexes inside the harvesting area of existing harvesting structures are (this is simple if there are no river hexes)
      • permuted (won't affect harvest ie. game balance)
      • randomized so that the difference of harvests stays within some threshold
    7. mix content from several existing galaxies
    8. swap ownership of identical harvesting structures on planets, eg. on standard Kish, Li Halan starts with the two mid latitude farms while the farms nearer to the poles are held by rebels, so permute ownership
    9. etc
    10. a mix of the above could confuse players suitably while maintaining the balance of the seed galaxy (this could result in better multiplayer galaxies than full randomization without some sort of balancing)
Estimated work per level of randomization
  1. Full
    • Difficulty: moderate/hard
    • Size: medium/large
  2. Partial
    • Depends on level of randomization, e.g. easy/small for simply shuffling planet locations, also the modularized alterations would be implemented incrementally with concrete results after completion of each module
@joulupunikki joulupunikki changed the title Random galaxy generator Task: Random galaxy generator Apr 27, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant