Jump to content
XCOMUFO & Xenocide

Posible New Code Layout


red knight

Recommended Posts

Well this is the proposition for the new layout... make sure you read all the readme.txt files because they explain the directory inner working in some cases with examples... the code there is just a placeholder.

 

Only one comment, you will find two directories named devpack.win32 and devpack.linux well those directories are just to show you that there will be one of those for every platform. In development you will only find a devpack without the dot platform.

 

Again read all the txts they explain a lot more than you can see. You can download the file from here

 

Greetings

Red Knight

Link to comment
Share on other sites

  • 2 weeks later...

Ok, I have downloaded the proposed layout anyway. I understand that this is outdated and I might be just waisting my time here, but anyway...

 

I have found that the layout is not convinient to use (and, yes, I have read every single readme.txt file there). The problem is because the top level has subdirectories for each different game component (engine, utility, xenocide), which in their own case have subdirectories like src/engine, src/utility, src/xenocide. All other structures are exactly the same - each have bin, compilers, intermediate and docs.

 

I suggest to inverse the structure and name root directories after its content and not after the purpose of the content. So, here how I would make a tree:

devpack
src
  engine
  utility
  xenocide
include
  engine
  utility
  xenocide
bin
  engine
  utility
  xenocide
docs
  engine
  utility
  xenocide
intermediate
  engine
  utility
  xenocide
compilers
  devcpp
  borland.v5
  borland.v6

This structure will provide a benefit of having only one include location ./include. This directory will have at least external include files, so programmer could reference them like #include "engine/engine.h".

Edited by mamutas
Link to comment
Share on other sites

I though about doing that before, however the idea is to completly separate the modules... for example you would just checkout the utility module from the CVS if your interest is in using it for the app and not the game... the idea is not mixing not Xenocide related utilities (general purpose) to make easy for developers interested in using those libraries for other purposes... The same for the engine, if you want to use the engine just download the utility and xenoengine module and there you go without even thinking on downloading xenocide....

 

Greetings

Red Knight

Link to comment
Share on other sites

×
×
  • Create New...