I have been thinking a bit about the structure of the application. I think that a similar structure like RMXP would be a good idea here. We have a very small main executable which mainly just runs the whole thing and we have a DLL where the actual smart part is.
I will put together a list of classes and a structure for the engine, then we can discuss it.
Yes, let's keep the number of files pretty small. I personally dislike programs that fill an entire folder with countless files that could have just as easily been compiled together. Maybe it's my OCD thing, but I thing it just a bunch of extra clutter.
I like this idea. having the large parts of the engine held outside of the executable seems right. I guess the main executable would hold the static ruby and load libraries to expose their interfaces to ruby?
Nope. Ruby will be in zer0division.dll. The actual Game.exe will have the absolute minimum possible. Update your SVN working copy, I already added that stuff. zer0 is already being statically linked with Ruby. I just haven't added any Ruby/C++ interface code yet so the library is never actually included for now.
EDIT: Actually I just had an idea. It will be a lot easier if we first made a clone engine of RMXP. We will make Zer0 Division our way, then add the script layer for RMXP script compatibility. Once we have done that and we have a tested engine that works, we can start modifying the engine in such a way that it gets better than RMXP. What do you think about that?
in other words we make the back end compatible with what we want to do eventually. then add a layer of ruby scripts that translates it to the RMXP interface so that the default scripts work.
Exactly. :)
Quote from: Blizzard on March 06, 2011, 07:06:31 am
EDIT: Actually I just had an idea. It will be a lot easier if we first made a clone engine of RMXP. We will make Zer0 Division our way, then add the script layer for RMXP script compatibility. Once we have done that and we have a tested engine that works, we can start modifying the engine in such a way that it gets better than RMXP. What do you think about that?
<3