AngleWyrm / Colonies

Minecraft mod MineColony Reboot
7 stars 8 forks source link

Folder organization #81

Open AngleWyrm opened 11 years ago

AngleWyrm commented 11 years ago

All creative endeavors generate garbage. In programming, this generally takes the form of Great Ideas that could get in there someday. Dead code and media that is not part of the mod, but is instead part of an idea for future development of the mod.

This is the main reason for author-named working folders, to separate out WIP modules, dead code, abandoned sub-projects, and the like.

At the time of release, it would be good to have the released mod folder hierarchy in a simpler form.

Colonies

As modules become part of the core mod, they can be transferred to the main folders. While they are still non functional works in progress, they should remain in the author WIP folders. This applies to artwork and sound files as well; if they aren't actually in the game yet.

It should be noted that Minecraft v1.5.0 and the ongoing efforts of Mojang's team to develop an API will significantly impact our source code, and probably the folder tree layout as well.

riking commented 11 years ago

I would like to propose the subdivision of your src/ folder in a manner similar to Bukkit/CraftBukkit and Minecraft Forge, where entities, blocks, items, tileentities, world stuff, etc have their own folders.

Cons
Pros
AngleWyrm commented 11 years ago

The primary purpose of any such subdivision is to enable the devs to more easily find things.

I can agree that searching though a single long list of source code files isn't an ideal arrangement. But I can also say that navigating a folder tree is an additional hassle.

And people can easily become consumed by a desire to organize.

So I would like to suggest that any subfolder of colonies/src be justified by containing at least ten files.

AngleWyrm commented 11 years ago

After reviewing the contents of colonies/src, it seems several categories of file are developing, but not yet ready to be parsed into subfolders. Citizens and AI look like two future candidates.

If we group the AI modules with the citizens, then Citizens meets the recommended ten files. The same could happen for a folder Buildings, that contained the blocks, tile entites, and GUIs for buildings