SFML community forums

General => SFML projects => Topic started by: MarsCoreTeam on September 23, 2010, 06:32:00 pm

Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on September 23, 2010, 06:32:00 pm
Hi there community!

This is Felix Lauer and Simon Schneegans and we are developing a little game called M.A.R.S. - a random shooter using sfml 2.0 in its current state.

M.A.R.S. is set up in a twodimensional galaxy, governed by the laws of gravity.
For further information feel free to visit www.marsshooter.org .

M.A.R.S. is OpenSource, so you can get it for free and modify things as you like.
We would appreciate your visit and some feedback concerning our game.

Best regards,
Felix
Title: M.A.R.S. - a random shooter
Post by: Lupinius on September 23, 2010, 06:48:42 pm
Looks fancy and plays nicely. Only thing I didn't like was the extreme acceleration. It's kinda annoying to control the ship. Was fun though :)
Is this a one person project or do you have a team?
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on September 23, 2010, 06:55:47 pm
Quote from: "Lupinius"
Looks fancy and plays nicely. Only thing I didn't like was the extreme acceleration. It's kinda annoying to control the ship. Was fun though :)
Is this a one person project or do you have a team?


As most of the testers, you will get used to the controls, promised ;)
At fact, there are two peoble working on M.A.R.S. and a few helpers giving feedback and stuff.

Regards,
Felix
Title: M.A.R.S. - a random shooter
Post by: panithadrum on September 24, 2010, 09:02:27 am
This game is good stuff. Very well programmed and clean graphics. What are you planning for this game? And maybe new games?
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on September 24, 2010, 10:09:14 am
Quote from: "panithadrum"
This game is good stuff. Very well programmed and clean graphics. What are you planning for this game? And maybe new games?


Thanks. Nice to hear good words about it :)
What are we planning... of course we are going to finish it and there will be a teaser/trailer in the next weeks. M.A.R.S. in its final state will be published under the same license as it is now (GNU GPL v3 or higher), so nobody ever has to pay for it:)
Furthermore we will see how we can use sfml to provide a goot network mode, i think this game could be fun in LAN ;)
New games are already in the backs of our heads. But we won't create a new one until M.A.R.S. is finished.

Best regards,
Felix
Title: M.A.R.S. - a random shooter
Post by: WitchD0ctor on September 26, 2010, 06:52:49 am
That is one sexy GUI u have going on there, how did u do it?
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on September 26, 2010, 10:20:31 am
Basically, each window is a quad, sourrounded by a quad on each side and in each corner with the neon-tube-texture on it.
All other widgets are non-textured, simply drawn with OpenGL commands.
We decided to design our own GUI, since M.A.R.S. is a small game and any GUI-library we looked at, was bigger than M.A.R.S. in total and that would have been a bit odd, wouldn't it?
All the textures are created with Blender (http://www.blender.org) and The Gimp (http://www.gimp.org).
Hopefully I answered your question sufficiently, if it's targeted more the internal code structure, feel free to download the sourcecode (http://mars-game.svn.sourceforge.net/viewvc/mars-game/), and ask any further questions!

Greetings, Simon.

BTW: There is an EPIC WALLPAPER (http://mars-game.sourceforge.net/media/wallpaper1.jpg), made from a screenshot of the upcoming version 0.4!
Title: Release 0.4.0
Post by: MarsCoreTeam on September 30, 2010, 12:40:19 am
We finished relase 0.4.0 tonight.
Many bugs were fixed and it includes a lot of new features.
Download it at http://mars-game.sourceforge.net/download.html

Best regards,
Felix
Title: Release 0.5.0
Post by: MarsCoreTeam on October 14, 2010, 11:14:47 pm
A new release is now available http://www.marsshooter.org !
We fixed some bugs and implemented a lot of new features.

Here are the most important ones:
A tutorial level, which probably helps getting used to M.A.R.S.
Language support (English and German so far).
New high resolution background images (important for wide screens).

A more detailed change log is posted at our homepage.

Please feel free to test the new version and to give as many feedback as possible!

Best regards,
Felix
Title: M.A.R.S. - a random shooter
Post by: Svenstaro on October 15, 2010, 07:04:35 am
Just played it a little, nice game! I recommend you also provide libjpeg.so.62 though since my distro (Arch) comes with libjpeg 8 and other modern distros will as well.

I especially like the consistent graphical style you went for.

Is there any reason you chose premake? I haven't worked with it yet but from the looks of it, its features and purpose is mostly that of CMake. If you have used both, can you provide some insight why you went for premake?

I congratulate you on making the game and its assets GPL3. I think I might be snatching a few bits of it for my own projects soon (GPL3, of course). :)

Is there a reason you are not using a scripting language except for the build script?

You are using mixed CRLF line endings. Try to keep it to just LF so vim doesn't show weird symbols.

All in all good job, looking forward to any further development.
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on October 15, 2010, 09:44:18 am
Quote from: "Svenstaro"
Just played it a little, nice game! I recommend you also provide libjpeg.so.62 though since my distro (Arch) comes with libjpeg 8 and other modern distros will as well.

I especially like the consistent graphical style you went for.

Is there any reason you chose premake? I haven't worked with it yet but from the looks of it, its features and purpose is mostly that of CMake. If you have used both, can you provide some insight why you went for premake?

I congratulate you on making the game and its assets GPL3. I think I might be snatching a few bits of it for my own projects soon (GPL3, of course). :)

Is there a reason you are not using a scripting language except for the build script?

You are using mixed CRLF line endings. Try to keep it to just LF so vim doesn't show weird symbols.

All in all good job, looking forward to any further development.


Thanks for your praise!

libjpeg.so.62 is a good point, I think we will provide it in further versions.

Our reason for choosing premake is its simpleness. CMake seemed quite complex when we started to concern about build scripts.
But we will try to switch to CMake in the future.

Feel free to use the code as you like ;)

I don't understand your next point. What for we should use other script languages?

The mixing up of CRLF and LF comes from editing M.A.R.S. under both Windows and Unix. It's a bit tricky to have system independend text parsing.

Stay tuned ;)
Best regards,
Felix
Title: M.A.R.S. - a random shooter
Post by: Svenstaro on October 16, 2010, 06:18:54 am
I was just curious that you, unlike most modern games, you did your complete game in C++ without any scripting support. This isn't critique by any means and I currently not script my games as well but I thought all the cool kids today build a scriptable engine for their games. :P
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on October 16, 2010, 11:27:42 am
Quote from: "Svenstaro"
I was just curious that you, unlike most modern games, you did your complete game in C++ without any scripting support. This isn't critique by any means and I currently not script my games as well but I thought all the cool kids today build a scriptable engine for their games. :P


:D agreed. But in our opinion, C++ is a lot more fun to use ;)

Best regards,
Felix
Title: M.A.R.S. - a random shooter
Post by: pencils on October 19, 2010, 11:08:39 pm
awesome work guys! Only played the demo for a few minutes, but was blown away by the production quality. This game is really polished! Love the look and feel.

Can I suggest a possible feature, if you don't mind. I used to love Star Control melee mode, and that had a wrap around battle-field. It makes the game flow a bit smoother as you just appear on the other side!

Perhaps you could add that as an option?

max kudos!
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on October 20, 2010, 09:51:11 am
Quote from: "pencils"
awesome work guys! Only played the demo for a few minutes, but was blown away by the production quality. This game is really polished! Love the look and feel.

Can I suggest a possible feature, if you don't mind. I used to love Star Control melee mode, and that had a wrap around battle-field. It makes the game flow a bit smoother as you just appear on the other side!

Perhaps you could add that as an option?

max kudos!


Thanks for your good words ;)

We already thought about that feature and came to the conclusion, that this option might destroy tactical aspects of the game (especially in SpaceBall).
Maybe we are going to add an option to turn wrap around on/off.

Best regards,
Felix
Title: M.A.R.S. 0.6.0 finally arrived!
Post by: MarsCoreTeam on November 24, 2010, 08:33:01 pm
Simon and I put a lot of work into the new release and are proud to present it eventually.
Let's see what is new:

Shaders!
Heat-causing particles are influencing their environment in a smooth-looking and flickering kind of way. This leads into a very dynamic and pretty optical impression.

PowerUps!
Annoy your enemies with setting them asleep or reversing their controls!
Refill your fuel and life without landing!
Be unbreakable for a while!
Just collect the write PowerUp ;)
You can configure their Spawnrate in the options menu.

New weapons!
We built in a rocket launcher.
Homing missiles will scare your enemies to death.
But be careful: they always attack the nearest ship.

Easier for new ones!
Tutorial bots are very weak now, their flying has been corrupted and they die after a few hits.
AI-strength is adjustable in the options menu.
As a little extra we gave every bot an individual “coefficient of dumbness“.

Improved backgrounds!
Especially gamers using hd-displays will be very keen on the new high resolution background textures. The end of tiling ;)
Furthermore background settings are randomly chosen from big pictures. You will never see the same background twice.
The resolution of the starfields can be switched in the options menu.

A more detailed changelog can be found on http://www.marsshooter.org .

Have fun with the new version!
Feel free to commend!

Best regards,
Felix
Title: M.A.R.S. - a random shooter
Post by: Svenstaro on November 24, 2010, 08:54:46 pm
Your presentation is outstanding. I'd appreciate if you could make the controls a little easier, perhaps a follow-mouse mode? Also, could you mark the players ships a bit better to follow them in the heat of the battle?
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on November 24, 2010, 10:56:13 pm
Quote from: "Svenstaro"
Your presentation is outstanding. I'd appreciate if you could make the controls a little easier, perhaps a follow-mouse mode? Also, could you mark the players ships a bit better to follow them in the heat of the battle?


Thank you very much :)
Mouse controls are not planned so far... we will see what we can do about making navigation easier.
The marking of the player's ship has been improved in each last release and so will be in any further.

Best regards,
Felix
Title: M.A.R.S. - a random shooter
Post by: Nexus on November 25, 2010, 12:12:48 am
Very nice game! Reminds me much of TOU (http://tou.has.it/). The weapons are funny :D

And the effects look indeed great. However, I find it quite difficult to move accurately. And the landing is nearly impossible, if enemies are around. Maybe you should simplify the movement a little bit, for example by allowing to fly backwards. Another idea would be to fly direct curves when pressing up and left or right. I.e., the gas jet would emit not only straight rearward.
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on November 25, 2010, 09:15:06 am
Quote from: "Nexus"
Very nice game! Reminds me much of TOU (http://tou.has.it/). The weapons are funny :D

And the effects look indeed great. However, I find it quite difficult to move accurately. And the landing is nearly impossible, if enemies are around. Maybe you should simplify the movement a little bit, for example by allowing to fly backwards. Another idea would be to fly direct curves when pressing up and left or right. I.e., the gas jet would emit not only straight rearward.


Thanks for the praise.

Controlling is actually not easy to master when starting with M.A.R.S.
But we think that this difficulity is one of the things making this game something special.
We know it can be frustrating bumping around and hitting every planet,
but with some practice it enables the player to drift around very smoothly, which is a very cool feeling.

Best regards,
Felix
Title: M.A.R.S. - a random shooter
Post by: Svenstaro on November 26, 2010, 12:02:59 am
You are still linking against libjpeg.so.62 in your new build, btw. How do you create the windows builds?

Also, please link against the new sfml so names in your premake file. Currently it tries to find sfml2*.so which doesn't represent upstream.

Can you also make an install target for your premake file and add an INSTALL or README file with build instructions?

Late edit: Here, I packaged your game for Arch (http://aur.archlinux.org/packages.php?ID=43905)

I'm a TU and I will create an official package once you guys have a stable release. Also, sfml2 needs to make a stable release first before this can happen.
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on November 26, 2010, 06:33:56 pm
Quote from: "Svenstaro"
You are still linking against libjpeg.so.62 in your new build, btw. How do you create the windows builds?

Also, please link against the new sfml so names in your premake file. Currently it tries to find sfml2*.so which doesn't represent upstream.

Can you also make an install target for your premake file and add an INSTALL or README file with build instructions?

Late edit: Here, I packaged your game for Arch (http://aur.archlinux.org/packages.php?ID=43905)

I'm a TU and I will create an official package once you guys have a stable release. Also, sfml2 needs to make a stable release first before this can happen.


We have a few questions about your post so Simon is going to write you an email.

Best regards,
Felix
Title: some questions...
Post by: MarsCoreTeam on November 26, 2010, 09:00:14 pm
(I decided to post here, instead of writing a pm, since others may want to read this too.)

Hi Svenstaro,

thanks a lot for your input! First of all: We are trying to learn a lot, but since we are really new to software engineering (we're studying computer science for one year right now) many things are done for the very first time. One of them is packaging a project for Ubuntu. With Windows - which we have in dual boot besides Linux - proper distribution of executables is easy (of course quite dirty, but, yeah - it works ;) ). But creating Debian packages for Ubuntu is really hard to accomplish if you're new to this. You seem to own a lot of knowledge on this topic... hopefully we may learn something :).
Quote
You are still linking against libjpeg.so.62

Do we? Actually we told the linker to link against the SFML libraries only. SFML does link against this library but why do we? (And of course, we'll change the lib names)
Quote
How do you create the windows builds?

By compiling them on Windows ;).
Quote
Can you also make an install target for your premake file and add an INSTALL or README file with build instructions?

Today we put a lot of time in understanding how autoconf works. And we made it produce a usable configure script. Therefore there will be a INSTALL, README, COPYING, ChangeLog, NEWS and AUTHORS file in SVN soon. However, "make" does it's job, but how is a game properly installed? The executable should resign in /usr/bin/games, shouldn't it? The data files have to be in /usr/share/games/mars-game, haven't they? The config file has to be saved in ~/.mars-game... How can our game access all these files? It would be a bad idea to hardcode these file names, wouldn't it? I took a look at your launcher script of Portalized (great stuff, btw!) but it didn't tell me everything...

There are so many unsolved problems, that our thoughts get knotted ;)

Some days ago, ubuntugamer.com proposed to make a review on M.A.R.S. This was really great, but they asked for a PPA, to make all things easier. So we looked in creating a PPA. This seems possible, if our configure script did what it is supposed to do, including installation. And of course, SFML2 has to be in this PPA too, which - ough - is a bit of our heads ;). There seems to be no PPA containing SFML2, except for this one, which is, well, empty: https://launchpad.net/~hohoo/+archive/sfml2. Is it possible to port your package for ArchLinux to Ubuntu? Or is it a lot easier to create one, than we thought?

Of course, someday we'll smile, thinking back to these humble attempts...

But we are eager to learn all of this  :lol: ! And maybe, you can help us doing so...

Greetings,
Simon.
Title: M.A.R.S. - a random shooter
Post by: Svenstaro on November 27, 2010, 01:18:19 am
I wouldn't worry about any academical progress since this is the stuff that comes with experience and some google-fu only. I'm completely self-taught and have yet to start university and I learned most of this stuff by trying it out and experimenting. It becomes easy once you gain some overview. Hence, you should be able to learn this quickly with a little guideline. Have some guideline:

Creating packages on Linux is hilariously easy, a lot more easy than on Windows actually since all the work is already done for you. Dependencies mostly exist already or you can easily package them yourself in special cases (sfml2 from svn is such a case). Then, depending on the distribution, you can share your work with others and let them improve it. In Arch Linux that is the AUR where you can upload you build scripts, in Ubuntu land this is a PPA.

What you chose to do by providing the pre-compiled binaries is actually a rather bad idea because people will be running different library versions (for instance libpng and libjpeg) that will cause your binaries to fail on such system. I happen to be running Arch Linux which is very up to date compared to Ubuntu and thus I see these problems. You should usually just provide a PPA that people can get nicely in their package managers.

Avoid pre-compiled binaries in Linux. If your game is closed source, you cannot avoid them.

In Windows, there is no such a thing as package managers or system included development toolchains. You'll be extremely glad if somebody did all the work for you and compiled the dependencies. Want to compile for Win x64? Deal with lots of problems! If you have figured out how to build specific dependencies you cannot easily share this knowledge with others as there is no central place for that. You are mostly alone with arcane compilations errors.

In general, developing on Linux is a lot more fun (IMO). You have a every development tool and library at your fingertips, usually pre-compiled, just waiting for installation. Want to install freeimage or sfml2 on Windows? Figure out how to build them, then manually put the paths into your IDE or configure them for CMake. In Linux, these paths are standardized and the packages are readily available. Nothing to set up, no hassle.

Porting an Arch Linux PKGBUILD to Ubuntu should be rather easy, even though I think Ubuntu's packages are unnecessarily complicated to produce and maintain which is also why I use Arch. An Arch Linux PKGBUILD really is a simple build script that calls a few things necessary to build a package.

About installation paths: You generally do not want to modify data outside of the user's home directory. This also won't work in most cases because the user will not have permission to do that.

I'd put the binary to /usr/bin/mars-shooter and the data to /usr/share/mars-shooter. The data path should be variable during compilation and/or during runtime and you might want to define a few standard search paths for it (like /usr/local/share/mars-shooter, /usr/share/mars-shooter, etc...). Any data you need to modify (scores, config) should be placed in ~/.mars-shooter.

If this post sounded like a Linux ad it is because I have spent too many hours on Windows trying to get a dependency to compile with my toolchain.

I heavily recommend you use CMake for your game as it will make it easiest for everyone to compile it.

If you have questions, feel free to ask.
Title: M.A.R.S. - a random shooter
Post by: Svenstaro on December 27, 2010, 07:05:13 am
Can you start putting your source into all releases from now on? I want to package it for Arch Linux but I can't build it from svn for that. It needs a tar.gz or similar I can use.
Title: Of course...
Post by: MarsCoreTeam on December 27, 2010, 11:32:06 pm
Of course we can do so. Did I get it right? What you need is a more or less stable snapshot of the source code from the time the release was made?

I just ask because a tar.gz of the current source can be downloaded everytime over there: http://mars-game.svn.sourceforge.net/viewvc/mars-game/?view=tar

Btw, today I implemented saving of the configuration file to ~/.marsshooter/, screenshots to  ~/.marsshooter/screenshots/ and on startup mars searches for it's data files in various locations in the file system. So the executable can be launched from everywhere. And both paths (configuration and data) can be set with command line arguments too. So PPA is getting closer ;)

Greeting,
Simon
Title: M.A.R.S. - a random shooter
Post by: Svenstaro on December 28, 2010, 02:03:21 am
Awesome to hear your progress!

What I mean is that I need the sources in a concrete package (not an on-the-fly svn-to-http package like you linked) that I can use md5sum on and always get the same md5sum on it.

Most projects have that and that is what package systems expect to work with, thus it would be appreciated. Basically, I'd like a third package additional to your current Linux and Windows pacakges that only contains the source and all binary files but not the prebuilt executables.
Title: M.A.R.S. - a random shooter
Post by: Aliens on December 31, 2010, 05:11:52 am
This game is.... awesome. I signed up just for this post. It's been a long time since I've played a game that made me laugh.

The gameplay is rock solid, spaceball is fun as hell.
Not a big fan of the powerups really but they can be disabled so yeah.
The controls while difficult at first are actually really easy to get used to.

I know I'm gushing, but I played for like 5 minutes and had tonnes of fun. Even though I'm pretty sure my bots scored more goals on us, than them.

All in all, great game and I can't wait for more, online play is going to be addictive as hell.

There needs to be a <3 emoticon  :D
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on January 02, 2011, 12:05:24 am
Quote from: "Svenstaro"
Awesome to hear your progress!

What I mean is that I need the sources in a concrete package (not an on-the-fly svn-to-http package like you linked) that I can use md5sum on and always get the same md5sum on it.

Most projects have that and that is what package systems expect to work with, thus it would be appreciated. Basically, I'd like a third package additional to your current Linux and Windows pacakges that only contains the source and all binary files but not the prebuilt executables.



I'm sure we will find a way to provide such a package as soon as possible.
Are you sure that the md5sum alway remains the same (independend from the package)? I am pretty new to it, but i thought the hash values are directly created from the binary structure of the packed files/the package itself, so that there is no way to get the same md5sum everytime.

Quote from: "Aliens"
This game is.... awesome. I signed up just for this post. It's been a long time since I've played a game that made me laugh.

The gameplay is rock solid, spaceball is fun as hell.
Not a big fan of the powerups really but they can be disabled so yeah.
The controls while difficult at first are actually really easy to get used to.

I know I'm gushing, but I played for like 5 minutes and had tonnes of fun. Even though I'm pretty sure my bots scored more goals on us, than them.

All in all, great game and I can't wait for more, online play is going to be addictive as hell.

There needs to be a <3 emoticon  :D


Thank you very much :)
We are glad to see that our work is honored with such nice words!

Best regards and a happy new year to all of you!

Felix
Title: M.A.R.S. - a random shooter
Post by: heishe on January 02, 2011, 02:28:03 am
game doesn't start for me. just opens the console, it stays black forever and nothing happens ;)

windows 7 64 bit. core 2 duo processor, ati 4890 hd. 2gb ram.

browsing through the code now.
Title: Very odd...
Post by: MarsCoreTeam on January 03, 2011, 02:53:22 pm
The problem you're describing is veeeery odd... ;)
We know some others who share this problem. It seems to be sfml-on-windows-related, not directly to mars, since it happens to every application which makes use of sf::Window. I will post over there: http://www.sfml-dev.org/forum/viewtopic.php?t=3830 because the poster there seems to have the same problem. Stay tuned, this will get fixed, since it seem to be a bug of SFML itself!

Greetings,
Simon
Title: M.A.R.S. - a random shooter
Post by: heishe on January 03, 2011, 05:05:16 pm
cmake won't work either. it aborts with failures about SFML-libs (seems like the cmake build is dependent on some SFML libs).  premake, I don't know how to compile thep remake script.
Title: M.A.R.S. - a random shooter
Post by: Svenstaro on January 03, 2011, 06:26:35 pm
Quote from: "MarsCoreTeam"
Quote from: "Svenstaro"
Awesome to hear your progress!

What I mean is that I need the sources in a concrete package (not an on-the-fly svn-to-http package like you linked) that I can use md5sum on and always get the same md5sum on it.

Most projects have that and that is what package systems expect to work with, thus it would be appreciated. Basically, I'd like a third package additional to your current Linux and Windows pacakges that only contains the source and all binary files but not the prebuilt executables.



I'm sure we will find a way to provide such a package as soon as possible.
Are you sure that the md5sum alway remains the same (independend from the package)? I am pretty new to it, but i thought the hash values are directly created from the binary structure of the packed files/the package itself, so that there is no way to get the same md5sum everytime.


Well you make a source package and of that package the md5sum will always be the same. With every new release you make a new source package that naturally has a new md5sum.
Title: M.A.R.S. - a random shooter
Post by: MarsCoreTeam on January 05, 2011, 07:29:04 am
Quote
cmake won't work either. it aborts with failures about SFML-libs (seems like the cmake build is dependent on some SFML libs). premake, I don't know how to compile thep remake script.


Of course, cmake depends on SFML2, since it tries to find it, in order to configure your favorite build system. And it will find SFML2 when there is a path variable on your system, pointing to the directory which contains the \include and \lib folder of SFML2 (this should be the path to your compiler...)

Premake is quite easy: Download the premake-4.3-windows.zip file over there: http://industriousone.com/premake/download, extract the containing exe to M.A.R.S. directory (put it in the same folder as the premake.lua script). Then open a command prompt, cd to M.A.R.S.' directory and enter "premake4.exe codeblocks" (or whatever build environment you prefer... there's a list of all supported ones: http://industriousone.com/what-premake)

That's all.

If you like premake, you can put the premake.exe in your System32 folder, so you can launch it from everywhere, but that's not necessary...

Greetings,
Simon.
Title: M.A.R.S. - a random shooter
Post by: Svenstaro on January 06, 2011, 02:36:07 pm
A few more things I noticed:

Yay for CMake. I'll be using that one in my packages from now on instead of premake. Your CMake files still do not allow for proper automatic installation though. Calling make install should install all files to their proper places (/usr/bin/marsshooter, /usr/share/marsshooter/data, etc).

Still no versioned source package! :(

You seem to have screwed up a merge somewhat as you can see in settings.cpp where you provide the three-way merge files in the commit: http://mars-game.svn.sourceforge.net/viewvc/mars-game/src/System/

You should provide a freedesktop .desktop file so that your game can easily be added to the menus of all DEs and WMs. Something like this: http://projects.archlinux.org/svntogit/community.git/tree/urbanterror/trunk/urbanterror.desktop . Don't forget the icon file itself.
Title: Re: Very odd...
Post by: heishe on January 10, 2011, 04:57:53 am
Quote from: "MarsCoreTeam"
The problem you're describing is veeeery odd... ;)
We know some others who share this problem. It seems to be sfml-on-windows-related, not directly to mars, since it happens to every application which makes use of sf::Window. I will post over there: http://www.sfml-dev.org/forum/viewtopic.php?t=3830 because the poster there seems to have the same problem. Stay tuned, this will get fixed, since it seem to be a bug of SFML itself!

Greetings,
Simon


Hey.

I'm pretty sure that problem is 64-bit related. I get the same error (and I mean that when launching any sfml app) on two of my 64 bit machines where I don't have properly compiled 64-bit dlls and libs for SFML (it doesn't seem to work with the 32 bit libs), but not on my 32 bit machine.
Title: M.A.R.S. - a random shooter
Post by: amdlintuxos on April 24, 2011, 08:59:55 pm
MarsCoreTeam
awesome work!
Title: M.A.R.S. - a random shooter
Post by: PhiLLe on May 25, 2011, 06:20:48 pm
I am trying to compile on windows but I can't do it. You cmake file does not do everything by itself.

After some time I found this in cmake\modules\FindSFML.cmake:
Quote
# If SFML is not installed in a standard path, you can use the SFMLDIR CMake variable
# to tell CMake where SFML is.

It's quiet hidden, don't you think? But it works.

But then I get this:
Quote
CMake Error: The following variables are used in this project, but they are set to NOTFOUND.
Please set them or make sure they are set and tested correctly in the CMake files:
FRIBIDI_LIBRARY
    linked by target "mars" in directory C:/Users/Philipp/Documents/C++/MARS/src
TAG_LIBRARY
    linked by target "mars" in directory C:/Users/Philipp/Documents/C++/MARS/src

This should not happen, since you provide those in your package.
So am I just suppose to provide the paths to those libs? I only found .dll's in the ext_libs_for_windows dir. I don't think I can link against those with MinGW? Do I have to build both libs by myself?

Edit:
Alright! I made it!
I build both libs (fribidi + taglib) by myself and installed them to my MinGW dir. I am sure I could have used the .dlls that are in the MARS folder but I wanted to have a clean build so I made sure everything is right.
Now I don't want to set the SFMLDIR. So I edited FindSFML.cmake so it can find my SFML build in my MinGW dir.

This is what I changed to make it work each time:
Code: [Select]
Index: cmake/modules/FindSFML.cmake
===================================================================
--- cmake/modules/FindSFML.cmake (Revision 200)
+++ cmake/modules/FindSFML.cmake (Arbeitskopie)
@@ -31,7 +31,8 @@
           /opt/local/  # DarwinPorts
           /opt/csw/    # Blastwave
           /opt/
-          ${SFMLDIR})
+          ${SFMLDIR}
+          C:/MinGW)
 
 # check the version number
 set(SFML_VERSION_OK TRUE)
@@ -68,7 +69,8 @@
                         /opt/local
                         /opt/csw
                         /opt
-                        ${SFMLDIR})
+                        ${SFMLDIR}
+                        C:/MinGW)
 foreach(FIND_SFML_COMPONENT ${SFML_FIND_COMPONENTS})
     string(TOLOWER ${FIND_SFML_COMPONENT} FIND_SFML_COMPONENT_LOWER)
     string(TOUPPER ${FIND_SFML_COMPONENT} FIND_SFML_COMPONENT_UPPER)
Index: CMakeLists.txt
===================================================================
--- CMakeLists.txt (Revision 200)
+++ CMakeLists.txt (Arbeitskopie)
@@ -29,7 +29,7 @@
 include_directories(${OPENGL_INCLUDE_DIR})
 
 # find the sfml2 headers and library
-find_package(SFML REQUIRED graphics system audio window)
+find_package(SFML REQUIRED audio graphics window system)
 include_directories(${SFML_INCLUDE_DIR})
 
 # Foundation library needed for apple
@@ -46,7 +46,7 @@
  find_library(TAG_LIBRARY tag)
 
 # Fribidi library needed for bi-directional texts
- find_library(FRIBIDI_LIBRARY fribidi)
+ find_library(FRIBIDI_LIBRARY fribidi-0)
 
 # set the executable output path
 if(APPLE)


Btw: I love your game!
Title: M.A.R.S. - a random shooter
Post by: Haze on May 27, 2011, 12:56:32 am
Awesome game, one of the best sfml-based I've seen.
I especially enjoyed the gravity-logic-stuff, it's really impressive when playing in "Grave-itation Pit" mode.

Some suggestions:
Why limit the map to the screen size ? It's quite narrow and it's confusing sometimes with all these ships and planets in the same little place. You could make it larger than the screen and keep the view centered on the player.


Also, nice work on the GUI (tabs, color picker, ...), it's very clean and easy to use.
Title: M.A.R.S. - a random shooter
Post by: chrusty on June 03, 2011, 02:03:05 pm
Awesome game guys, its also very valuable for anyone trying to learn a bit of game programming, keep up the great work!