Welcome, Guest. Please login or register. Did you miss your activation email?

Author Topic: M.A.R.S. - a random shooter  (Read 26224 times)

0 Members and 1 Guest are viewing this topic.

MarsCoreTeam

  • Newbie
  • *
  • Posts: 33
    • View Profile
    • http://www.marsshooter.org
M.A.R.S. 0.6.0 finally arrived!
« Reply #15 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
Working on the Open Source Project M.A.R.S.

Svenstaro

  • Full Member
  • ***
  • Posts: 222
    • View Profile
M.A.R.S. - a random shooter
« Reply #16 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?

MarsCoreTeam

  • Newbie
  • *
  • Posts: 33
    • View Profile
    • http://www.marsshooter.org
M.A.R.S. - a random shooter
« Reply #17 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
Working on the Open Source Project M.A.R.S.

Nexus

  • SFML Team
  • Hero Member
  • *****
  • Posts: 6286
  • Thor Developer
    • View Profile
    • Bromeon
M.A.R.S. - a random shooter
« Reply #18 on: November 25, 2010, 12:12:48 am »
Very nice game! Reminds me much of TOU. 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.
Zloxx II: action platformer
Thor Library: particle systems, animations, dot products, ...
SFML Game Development:

MarsCoreTeam

  • Newbie
  • *
  • Posts: 33
    • View Profile
    • http://www.marsshooter.org
M.A.R.S. - a random shooter
« Reply #19 on: November 25, 2010, 09:15:06 am »
Quote from: "Nexus"
Very nice game! Reminds me much of TOU. 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
Working on the Open Source Project M.A.R.S.

Svenstaro

  • Full Member
  • ***
  • Posts: 222
    • View Profile
M.A.R.S. - a random shooter
« Reply #20 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.

MarsCoreTeam

  • Newbie
  • *
  • Posts: 33
    • View Profile
    • http://www.marsshooter.org
M.A.R.S. - a random shooter
« Reply #21 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
Working on the Open Source Project M.A.R.S.

MarsCoreTeam

  • Newbie
  • *
  • Posts: 33
    • View Profile
    • http://www.marsshooter.org
some questions...
« Reply #22 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.
Working on the Open Source Project M.A.R.S.

Svenstaro

  • Full Member
  • ***
  • Posts: 222
    • View Profile
M.A.R.S. - a random shooter
« Reply #23 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.

Svenstaro

  • Full Member
  • ***
  • Posts: 222
    • View Profile
M.A.R.S. - a random shooter
« Reply #24 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.

MarsCoreTeam

  • Newbie
  • *
  • Posts: 33
    • View Profile
    • http://www.marsshooter.org
Of course...
« Reply #25 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
Working on the Open Source Project M.A.R.S.

Svenstaro

  • Full Member
  • ***
  • Posts: 222
    • View Profile
M.A.R.S. - a random shooter
« Reply #26 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.

Aliens

  • Newbie
  • *
  • Posts: 1
    • View Profile
M.A.R.S. - a random shooter
« Reply #27 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

MarsCoreTeam

  • Newbie
  • *
  • Posts: 33
    • View Profile
    • http://www.marsshooter.org
M.A.R.S. - a random shooter
« Reply #28 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
Working on the Open Source Project M.A.R.S.

heishe

  • Full Member
  • ***
  • Posts: 121
    • View Profile
M.A.R.S. - a random shooter
« Reply #29 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.