Droggelbecher / Grail

2D Point-and-click adventure game engine based on SDL
http://leetless.de
GNU General Public License v3.0
32 stars 4 forks source link

Overview of how the application works #24

Closed ghost closed 12 years ago

ghost commented 12 years ago

I think it would be useful to have a general overview of how the code works in Grail.

Something like this would be very useful, especially since Grail has a lot more moving parts (with the scripting language, editor support etc.) http://clintbellanger.net/rpg/blog/20120109

Droggelbecher commented 12 years ago

Great idea! Although I'm thinking maybe it would make more sense to write up how it should look by 1.0. Currently some parts are just toy-around ideas. E.g. there is a branch where i implemented a network interface that allows you to talk lua to the engine via tcp/ip just to see if it works as one possibility of communication with a scene editor, game debugger or something like that. However I'm not sure this will make it into 1.0 or if we will just discard it.

To sum up, my suggestion is: We complete the roadmap for 1.0 and give it enough detail to be exactly this kind of documentation when 1.0 is achieved.

Of course we can do some current state overview too, as orientation about what we have. In that case: What kind of diagram/documentation would you prefer? The example you gave looks like a mixture of a UML class diagram and something else, I think it would be more helpful to be clear about what such a diagram should upfront.

Note that there is a script that generates class diagram-ish graphs from a textfile describing how it should look like. Its doc/generate_clsgraph.py, the textfile is doc/libgrail.cls. The .cls file might be somewhat outdated (I haven't looked at it for months), but the syntax should be quite intuitive.

Droggelbecher commented 12 years ago

Just to give you an idea of how the output of that script looks, here is the result of parsing libgrail.cls from the develop branch: http://img.flashtux.org/img133029014b7axd5d24989.png

ghost commented 12 years ago

Ok, yeah we should do a diagram of how we want 1.0 to be, so we need to finalize the roadmap first. I think UML would be best as it's standard although I'm not quite sure I know all the rules of it yet. That script looks awesome. I want to play with that later.