SFML community forums

General => SFML projects => Topic started by: Lo-X on August 28, 2011, 09:11:52 pm

Title: Galaxy
Post by: Lo-X on August 28, 2011, 09:11:52 pm
Hi ! Now that my project is advanced, I post a topic about it on the english forum.

(http://monstruosor.com/images/Galaxy/splash.png)

Galaxy is a 2D space shooter in which you control the energy distribution in the spaceship. Do you need energy in weapons ? Motors ? Shields ? You're the captain, you decide !

History

In year 3035, the Earth has been destroyed by the Thorgs, an alien race met while human beeing was exploring the Galaxy... Only some spaceships could escape, they decided to hide survivors on the remaining colonies. A plan is setting up to retrieve an engine witch could permit, in theory, to come back in the past in order to save the Earth from destruction...

Developpement

Only one or two space objects and the campaign mode aren't implemented yet.

Gameplay

You have to allocate the energy between 3 modules
- Shields : more energy = more shield recuperation at each tick
- Weapons : more energy = more damages
- Motors : more energy = more speed

Gamepad and joysticks can be used but the mouse is required for some actions.

Keybind is dynamic.

There will be a demonstration version soon, the time for me to add at least one campaign level.

Demo :

http://monstruosor.com/accueil/download/galaxy/

Video :

Short video here! (http://www.dailymotion.com/video/xkrh3v_galaxy-demo-available-soon_videogames)
Title: Galaxy
Post by: eXpl0it3r on August 28, 2011, 10:20:53 pm
The number of great SFML projects are constantly going up - I like that! :D
Your game looks awsome, okay we haven't seen much but the menu looks pretty convincing.
I hope to see some more soon.

Still there are questions about the game, like is it just a shooter like many others, were you go through diffrent waves of enemies (with the enegery addition) or is there also a story-telling within it.
Like you're starting from the destroyed Earth and will end up on another planet on which human beeings can live?

eXp
Title: Galaxy
Post by: Groogy on August 28, 2011, 10:36:04 pm
Looks like Haikrainens logo is getting famous as well :P
Title: Galaxy
Post by: Lo-X on August 28, 2011, 10:43:53 pm
Quote from: "eXpl0it3r"
The number of great SFML projects are constantly going up - I like that! :D Your game looks awsome, okay we haven't seen much but the menu looks pretty convincing.


Thank you very much, the game in Skirmish mode look like what you can see behind the menu. But I'm not sure my game is awesome, this is my first one, I'm not very good in everything graphic, some problems or bugs still make me hit my head against a wall, but...


Quote from: "eXpl0it3r"
Still there are questions about the game, like is it just a shooter like many others, were you go through diffrent waves of enemies (with the enegery addition) or is there also a story-telling within it.


There is a campaign mode, with a story, objectives, and also fights. And there is a skirmish mode where you have to kill an ennemy wave. It's planned to increase the difficulty of skirmish mode when you progress in campaign mode.

Thanks again !

Quote from: "Groogy"
Looks like Haikrainens logo is getting famous as well :P


Yes, it rocks !
Title: Galaxy
Post by: Haikarainen on August 28, 2011, 11:50:18 pm
Quote from: "Lo-X"

Quote from: "Groogy"
Looks like Haikrainens logo is getting famous as well :P


Yes, it rocks !


Seems like that and the idea of having a rotating gear is catching on like wild fire, awesome to see :D You should probably wait tho, working on a library to display videos without having to deal with licenses etc that codecs bring on, as well as a HD rendered bumpmapped video with alphachannels / transparency*.

Your game looks really interesting , cant wait for demo :) GJ so far!
Title: Galaxy
Post by: teto on August 29, 2011, 11:24:19 am
This looks very promising indeed. First time I see this logo: a bit unreadable I think but the rotating gear is something to keep in mind, itdoes look cool :p
Title: Galaxy
Post by: Lo-X on August 30, 2011, 09:47:29 pm
Good news everyone !

The demo is here !

Contain : the tutorial level, the skirmish mode, options.
What's next : Spaceship Upgrades, ~40 Campaign levels, Team Death Match Like Mode and a few more decoration in the background.

The unique link : http://monstruosor.com/accueil/download/galaxy/ (Windows)
If DLL are missing :
http://monstruosor.com/download/openal32.dll
http://monstruosor.com/download/libsndfile-1.dll
The problem is resolved now. But don't use the automatic generated shortcut on desktop, it's not a good shortcut. Go to the game folder and create the shortcut from there.

Note : Do not install the game in c:/Program Files/ folder. With Vista and 7 windows don't want Galaxy to create files ><

If you have questions, bugs, things to say, you're welcome !

Thank you !
Title: Galaxy
Post by: easy on September 05, 2011, 08:34:25 pm
So you're almost ready with this game? :shock:

According to the video it's very polished and looks fun! :)
I'd like to try it out but there's no Linux version.

Will you make a longer gameplay video?

Those particles... are not sprites, I presume.
Title: Galaxy
Post by: Lo-X on September 05, 2011, 09:04:19 pm
Quote from: "easy"
I'd like to try it out but there's no Linux version.

Will you make a longer gameplay video?

Those particles... are not sprites, I presume.


I can make a Linux version but I never tried to do a .deb paquet, I'll try.

I'll probably make a gameplay video, I just wait the implementation of some options and levels.

Indeed, particles aren't sprite but drawable, just some squares or rectangles. It's my first Particle System so I wanted something easy and fast, but I need to learn more, the FPS is low when there are about 3000 particles, with a medium computer.

Thank you for your your interest :D I think I'll make a .deb version of the demo in the week =)
Title: Galaxy
Post by: easy on September 06, 2011, 07:42:59 pm
Quote
I can make a Linux version but I never tried to do a .deb paquet, I'll try.


I don't think you need to make a .deb, it's completely enough to compile your game on linux, and to attach the shared libraries with your binaries. If you're using SFML 1.6, it's going to be easy, but for 2.0 you'd have to compile SFML by yourself... :)
Title: Galaxy
Post by: Lo-X on September 06, 2011, 07:58:35 pm
Quote from: "easy"
Quote
I can make a Linux version but I never tried to do a .deb paquet, I'll try.


I don't think you need to make a .deb, it's completely enough to compile your game on linux, and to attach the shared libraries with your binaries. If you're using SFML 1.6, it's going to be easy, but for 2.0 you'd have to compile SFML by yourself... :)


Okay, I use SFML 2.0 and i've already compile it since I started the developping of my game on Linux.

But I use an old revision of SFML2 (juste before the split of sf::Image into sf::Texture) so you'll not have the last revision.
Title: Galaxy
Post by: easy on September 06, 2011, 11:09:26 pm
Quote from: "Lo-X"
Okay, I use SFML 2.0 and i've already compile it since I started the developping of my game on Linux.

But I use an old revision of SFML2 (juste before the split of sf::Image into sf::Texture) so you'll not have the last revision.


Cool! Then I guess it will work if you just compile your game with that version of SFML2 and provide the older shared libs with the binaries. The only problem could be the path, as I see it. That is, where should the app look for the SFML libraries?

If you put the SFML libs into the root of your game, cou can make a script like this start.sh script:

Code: [Select]
#!/bin/bash

cd `dirname $0`
export LD_LIBRARY_PATH=.
./yourGameExecutable


Or, do what Kalith said to me (http://www.sfml-dev.org/forum/viewtopic.php?t=5382&start=30) and use the compilation flag "-rpath ./" which has the same effect as the script above.
Title: Galaxy
Post by: Lo-X on September 07, 2011, 09:07:16 am
I'll do that this evening (for me, in france), thank you for your help :D
Title: Galaxy
Post by: Lo-X on September 07, 2011, 09:41:28 pm
Okay,

So i've had a problem, the archive with all files is too heavy to upload it on SFMLUpload or other upload/download sites but I've got a solution

If you don't have it, just download the Windows version, in order to have images, audio and conf files. Link here :
http://monstruosor.com/accueil/download/galaxy/

Then, you can download the debian executable and sfml .so files here :
https://legacy.sfmluploads.org/file/64

Just copy them in the root folder (Galaxy0-2-0...).

Then make Launcher and Galaxy an executable with chmod +x command
Launch the launcher with ./Launcher

And you're done ! (I think)

I don't tested this solution 'cause I've these .so in /usr/lib folder, I think you may need a .so for C++ but you've got it I presume.
Title: Galaxy
Post by: easy on September 07, 2011, 11:23:09 pm
I'm going to try it out as soon as it gets downloaded. 50 minutes left? Something must be wrong here... I'm going to try it again!

To download the other one from SFMLUploads were just a blink.
Title: Galaxy
Post by: Lo-X on September 08, 2011, 07:11:27 am
Quote from: "easy"
I'm going to try it out as soon as it gets downloaded. 50 minutes left? Something must be wrong here... I'm going to try it again!

To download the other one from SFMLUploads were just a blink.


It's normal the archive is 121Mb and my FTP server is not made for that, it's just a temporary solution for the demo.
Title: Galaxy
Post by: easy on September 08, 2011, 02:06:35 pm
Ok I've downloaded both of the files, and then I've realized it's an exe... :shock: I don't have WINE, but I have booted up a Windows in VirtualBox. I've installed the game there but it did not work. The window has frozen, actually. Anyway, I've copied these files on my Linux plus the Linux pack you've provided but it seems you've forgotten about the Launcher script, as I cannot find it anywhere. Running just the Galaxy executable does not do anything, just a window pops up and closes immediately.
Title: Galaxy
Post by: easy on September 08, 2011, 02:10:36 pm
Don't worry, I've just made a Launcher script and it works! Testing... :D
Title: Galaxy
Post by: Lo-X on September 08, 2011, 02:24:17 pm
Quote from: "easy"
it seems you've forgotten about the Launcher script, as I cannot find it anywhere. Running just the Galaxy executable does not do anything, just a window pops up and closes immediately.


Hmm.. Oops :/ Yes I forget it :/
Yes I compiled the game with the console activation I think (I usually debug on Linux and the console is usefull)

But if you managed to run it, that's perfect :D
Title: Galaxy
Post by: Brendon on September 10, 2011, 11:10:28 pm
Good stuff!

I love how the little fighter ships buzz around you. Do they move around randomly, or is there some sort of behind-the-scenes spline system?

Also, I was curious about how you did the booster-trails behind the ships. Is that done via raw OpenGL calls?  It looks great.
Title: Galaxy
Post by: Groogy on September 11, 2011, 12:06:58 am
Hmm I would guess some people do it with particles though think my teacher said something that most often you can get it to look even better with strokes(I think that was what he said, doesn't remember exactly).

Example on the wiki: http://www.sfml-dev.org/wiki/en/sources/stroke
There's a youtube video of it as well.
Title: Galaxy
Post by: Lo-X on September 11, 2011, 12:42:55 am
Quote from: "Brendon"
Good stuff!

I love how the little fighter ships buzz around you. Do they move around randomly, or is there some sort of behind-the-scenes spline system?

Also, I was curious about how you did the booster-trails behind the ships. Is that done via raw OpenGL calls?  It looks great.


Quote from: "Groogy"
Hmm I would guess some people do it with particles though think my teacher said something that most often you can get it to look even better with strokes(I think that was what he said, doesn't remember exactly).


@Bredon :
Thank's a lot ! As a fan of your games I'm very happy you like mine (at least a little bit :D)
To answer for the fighters ships, they simply turn around a point. When they are too far away, they turn in order to go on that point. So basically they do a kind of " 8 ".

@Both :
Before the actual trails system, I used particles but as there are a LOT of particles in the game, it became slow.
So I switched for a simple array of points and I connect the points with a stroke that I make progressively transparent.
Title: Galaxy
Post by: easy on September 11, 2011, 11:50:44 am
Hi!

I haven't had as much time to test this as I wanted, but here are some thoughts:



I know it's a demo, but I already really like it, and encourage you to keep it up! :D

Cheers!
easy
Title: Galaxy
Post by: Lo-X on September 11, 2011, 01:50:10 pm
Thanks a lot for your feedback ! It's very constructive and it helps a lot !
Furthermore I'm glad to see that you like my game.

Quote from: "easy"
Once I've targeted a ship, I cannot remove it! (I've attacked the home base accidentally) I think it would be nice to be able to cancel this when clicking on an empty area


In fact this is possible by hitting Escape, but I forget to let the user bind that key.

Quote from: "easy"
What's the goal in Campain mode? Collecting minerals for one, okay, destroying the enemy ships for two, okay, but when done, what should I do?


In the demo there's nothing more. In the next version (beta), all campaign levels will be there and a pannel to upgrade your ship with minerals.


Quote from: "easy"
The screen once remained green for me when died in minimap mode


Yes, that's fixed in part. I thought it was funny to see the main menu in green so I let it. I'll probably really fix it if it's sounds weird for other people :p

Quote from: "easy"
In skirmish mode I've got a fleet and the enemy is just one tiny ship? Asteroid boundaries are not visible or obvious enough!


Oops. That's just in Linux version. I really need to share sources between linux and windows... :/

Quote from: "easy"
Asteroids should rather push the ship back and the ship should then lose some power, in my opinion.


I already reduce the hitbox of asteroids, but your idea sounds great.

Quote from: "easy"
No instructions, the player has to figure out how things work.


In fact there are, but sometimes if you give an order or something when the message should be shown, it disappear. That's fixed and I've added some buttons to see previous/next messages. I'll probably show a list of objectives too.

Quote from: "easy"
The game menu, the options and key bindings are very nice! What do you use for GUI?


An very simple homemade one. I've a class Element and every GUI item inherits from that. Windows simply have a list of Elements and send events to those Elements. Tell me if you want more informations about that.
Title: Galaxy
Post by: easy on September 11, 2011, 08:20:41 pm
Quote
In the demo there's nothing more. In the next version (beta), all campaign levels will be there and a pannel to upgrade your ship with minerals.


Very cool! And when is the beat coming? :P

Code: [Select]
In fact there are, but sometimes if you give an order or something when the message should be shown, it disappear. That's fixed and I've added some buttons to see previous/next messages. I'll probably show a list of objectives too.

Then I think I've seen this, it should appear on the lower panel, right? This is what I was expecting, btw, to get instructions on the lower panel, but actually the text is not shown. The panel is, when the game starts, but it's empty.

Code: [Select]
An very simple homemade one. I've a class Element and every GUI item inherits from that. Windows simply have a list of Elements and send events to those Elements. Tell me if you want more informations about that.

Nice! I thought you use some external libraries for that. How do you catch when the user writes text to a textbox?
Title: Galaxy
Post by: Lo-X on September 11, 2011, 09:13:12 pm
Quote from: "easy"
Nice! I thought you use some external libraries for that. How do you catch when the user writes text to a textbox?


I first catch when the user click on the textbox and I set the focus to true. Then, if the textbox has the focus and a key (whatever it is) is pressed I add it into that box. I just check if the key isn't Enter or Return or Escape (etc..) in order to manipulate the string.
The    |    at the end is added when the element is focused and remove when it's not.

The textbox has the same member to get an event than all others and this event comes from an ui::Window (wich is an Element). The Window just have the event from the main loop.

Code: [Select]
Element
     -> Window
          -> std::vector<Element *>
     -> Textbox
     -> Select
     -> Button<T>
     -> Image
     -> Text


Button is templated because it has a member Bind(  object* ,  object::member ) in order to Trigger() it.
Title: Galaxy
Post by: easy on September 12, 2011, 03:41:41 pm
Thanks! This is going to be useful! :)
Title: Galaxy
Post by: Chiuchu on October 03, 2011, 11:49:26 pm
Salut,

Impressive work.

Do you plane any os x version ?

I have os x and i can compile it for you if needed.

Bon taff !
Title: Galaxy
Post by: Lo-X on October 04, 2011, 08:52:55 am
Quote from: "Chiuchu"
Salut,

Impressive work.

Do you plane any os x version ?

I have os x and i can compile it for you if needed.

Bon taff !


Thanks a lot !

I'll see that when the final version will be released.

At the moment I've a lot of work and I'm improving the code for the campaign mode, which was not enough flexible for what I wanted to do.

I'll give some news in the next weeks !