Page 1 of 1

SRS Document for v0.4

PostPosted: 16 Sep 2012, 15:46
by dmpalomp
Hello everyone,

I'm a computer science student in the Aristotle University of Thessaloniki, Greece. I found M&MS on sourceforge and downloaded the 0.3 and 0.4 versions.This is an interesting and fun game (congrats to the developers) and I really enjoyed playing it.I would like to contribute to the project, as part of my Software Engineering course, by making an SRS document for the 0.4 version. The document will be in english and can be included in the documentation of M&MS. So, I await for your reply so that I can begin writing. :)

Re: SRS Document for v0.4

PostPosted: 16 Sep 2012, 18:15
by Edward_Lii
Hello dmpalomp,

dmpalomp {l Wrote}:This is an interesting and fun game (congrats to the developers) and I really enjoyed playing it.

Thanks, I'm really glad you liked it. :)

dmpalomp {l Wrote}:I would like to contribute to the project, as part of my Software Engineering course, by making an SRS document for the 0.4 version. The document will be in english and can be included in the documentation of M&MS. So, I await for your reply so that I can begin writing. :)

Any contribution is welcome and I'm quite interested in how it turns out.
Maybe I'm wrong, but aren't SRS documents written before or at the start of the development?

Anyway, If you've got any questions about the code and/or project feel free to ask. ;)

Re: SRS Document for v0.4

PostPosted: 16 Sep 2012, 23:20
by dmpalomp
Well, as you said, SRS documents are usually written at the beginning of a project. The purpose of my course, though, is to find an active open source project on the internet which doesn't yet have an SRS document and contribute by writing it. So, now I have to wait a few days for my project choice to be approved in opense.net and then we're good to go. I'll keep in touch and ask here for any information I'm gonna need to write the document. ;)

Re: SRS Document for v0.4

PostPosted: 01 Oct 2012, 02:12
by dmpalomp
Hello again,

I've been working on the SRS document for a while and it will be done in the next 2-3 days. The web page and the wiki were very helpful with that.

I still have some questions, though. For now, I'd like to know if there are any software or hardware requirements to run the game.

Please respond asap because the due date for the project is this Thursday.

Re: SRS Document for v0.4

PostPosted: 01 Oct 2012, 06:06
by Edward_Lii
Hello dmpalomp,

dmpalomp {l Wrote}:I still have some questions, though. For now, I'd like to know if there are any software or hardware requirements to run the game.

The game uses quite a few third party libraries and only a couple of them are bundled with the game.
Here's a list of dependencies from the .spec file of the openSUSE RPM:
  • SDL
  • SDL_gfx
  • SDL_image
  • SDL_mixer
  • SDL_ttf
  • libarchive
  • libcurl
  • libopenssl
  • findlocale (bundled)
  • tinyformat (bundled)
  • tinygettext (bundled)
This list will be more or less the same on other operating systems.
Additionally the game can be compiled with OpenGL rendering, in which case the user needs gpu drivers.

Of course there are hardware requirements for the game but we haven't determined/set a minimum.
Whatever they are, they will be pretty low. Since the game can use software rendering it can be built and run on mobile devices.
So one requires a CPU, display and an input device (and preferably a GPU).
We try to make the game controllable with just the keyboard, but currently still requires both a mouse and a keyboard.

I hope this answered your question, if you need more information feel free to ask. ;)

dmpalomp {l Wrote}:Please respond asap because the due date for the project is this Thursday.

I wish you the very best of luck and I can't wait to see the end result. :)

Re: SRS Document for v0.4

PostPosted: 01 Oct 2012, 20:10
by dmpalomp
Thanks a lot,Edward_Lii. I think that covers the hardware and software interfaces section.

There is one more thing I need to know. Are there any communications interfaces in the game? As far as i can tell, there aren't any, but I saw the "Internet" and "Internet Proxy" fields on the settings menu. I couldn't understand what are these for.

The document is almost done. I can send it to you later so that you can check if I misconceived or forgot something important.

Re: SRS Document for v0.4

PostPosted: 01 Oct 2012, 20:56
by ctdabomb
dmpalomp {l Wrote}:There is one more thing I need to know. Are there any communications interfaces in the game? As far as i can tell, there aren't any, but I saw the "Internet" and "Internet Proxy" fields on the settings menu. I couldn't understand what are these for.

those are for downloading and uploading addons, though I am not 100% sure on that.

Re: SRS Document for v0.4

PostPosted: 01 Oct 2012, 21:25
by dmpalomp
Thanks ctdabomb, you were right about that.

Re: SRS Document for v0.4

PostPosted: 01 Oct 2012, 21:41
by dmpalomp
Well now I need to know how exactly this downloading is done. What protocols are used? Where are the addons stored? Some technical information would be great. :)

Re: SRS Document for v0.4

PostPosted: 02 Oct 2012, 05:37
by Edward_Lii
Hello dmpalomp,

dmpalomp {l Wrote}:Well now I need to know how exactly this downloading is done. What protocols are used? Where are the addons stored? Some technical information would be great. :)

Sadly the wiki is down for some reason, I'm pretty sure there was some useful information on there.
Anyway, the downloading is done with HTTP GET requests.

First the game will retrieve an addons list from the server using libcurl (link).
The game will turn that list into a GUI element, checked which are installed and if there are updates (all client side).
This file is put in the USER_CACHE directory, which under Linux systems will be ~/.cache/meandmyshadow.

Now when the user decides to download (or update) an addon the file will be downloaded from the addon repository.
In case of a single level it will download that level directly into the levels levelpack (~/.local/share/levels/).

If it's a levelpack or theme, meaning they exist out of multiple files, a zip file gets download into a temp directory (~/.cache/meandmyshadow/tmp).
Once downloaded it gets extracted into the custom directory in the USER_DATA path (~/.local/share/[levelpacks, themes]).

So all downloading is done by libcurl with HTTP GET requests. ;)

Re: SRS Document for v0.4

PostPosted: 02 Oct 2012, 18:18
by dmpalomp
The document is finished, people! Thanks a lot for the help. :)

Now where should i send/upload it? Edward_Lii, I think that you should check that first and tell me if anything has to be added/changed.

Please respond quickly because it must be done until tomorrow.

Re: SRS Document for v0.4

PostPosted: 02 Oct 2012, 18:45
by Edward_Lii
Hello dmpalomp,

dmpalomp {l Wrote}:Now where should i send/upload it? Edward_Lii, I think that you should check that first and tell me if anything has to be added/changed.

Depends on how big it is, but you can just attach it to an e-mail and send it to edwardlii [at] users [dot] sourceforge [dot] net.
If it's to big you can upload it anywhere and send me the link or post it here so that anyone can check it out. ;)

Re: SRS Document for v0.4

PostPosted: 07 Oct 2012, 19:39
by MCMic
Edward_Lii {l Wrote}:Anyway, the downloading is done with HTML GET requests.

I'm pretty sure you meant HTTP GET…

Re: SRS Document for v0.4

PostPosted: 07 Oct 2012, 20:01
by Edward_Lii
Hello MCMic,

MCMic {l Wrote}:I'm pretty sure you meant HTTP GET…

You're right, must have confused the two when writing this quickly. :oops:

Anyway, I fixed it now, thanks for pointing this out.