Sorry your browser is not supported!

You are using an outdated browser that does not support modern web technologies, in order to use this site please update to a new browser.

Browsers supported include Chrome, FireFox, Safari, Opera, Internet Explorer 10+ or Microsoft Edge.

DarkBASIC Professional Discussion / Space Conflict: Generations

Author
Message
Libervurto
16
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 23rd Feb 2013 03:00 Edited at: 7th Aug 2014 17:45
Space Conflict started life as a 20-liner by IBOL (link), I was impressed by it and started helping him improve the game. David Gervais made some nice graphics and IBOL released a new version with the updated graphics: link. We talked about making a new space game together, we had very ambitious ideas about infinite galaxies and procedurally created alien races and planets to explore, but there was too much confusion and we never got started. IBOL has since gone inactive but those ideas stuck with me and I have begun the project on my own.

There is one rule that I've set myself for this project: everything must be generated from code; the ships, planets, aliens, names, even the music and sounds must be procedurally generated -- this is the reasoning behind the corny working title. The first version of the game will be fairly simple and play like the original Space Conflict, but the original code can't be salvaged (believe me I've tried), I will have to start from scratch.

I decided to start with the spaceships. I've recently updated the code and I think they are close to the quality I'd like to see in the game. I just need to figure out how to dynamically create modified templates that will give each race a unique style, and maybe some decals too.

I'll post a list of what I'm planning to do next in the next couple of days. I'm open to help if anyone is interested in this project, if you are competent with procedural generation, AI or general RTS coding then you would be of great use to me, but I'm certainly not relying on forming a team. All this procedural generation might seem like overkill but A: this is practice for a much more ambitious project that will be about exploring and discovering new worlds. B: it's cool!

----

SPACESHIP GENERATOR

Change Log and Screenshots
* Version 1.0 - img
* Version 2.0 - Complete redesign. img
* Version 2.1 - Refined the algorithms. img
* Version 2.2 - Fixed some bugs, and improved both colour and shape algorithms. img
* Version 2.22 - Fixed more bugs and added dynamic templates for distinct racial styles. img
* Version 2.23 - Improved some aspects of the code. img
* Version 2.24 - Minor improvements.

Latest Version Source (v2.24):

Executable attached -->

-------------------------

To Do List:

Procedurally Generated Content
* Spaceships
* Planets
* Music & Sound

Game Code
* Housekeeping
* Controls
* AI

Formerly OBese87.

Attachments

Login to view attachments
Ortu
DBPro Master
15
Years of Service
User Offline
Joined: 21st Nov 2007
Location: Austin, TX
Posted: 23rd Feb 2013 05:17
Quote: " give each race a unique style, "


My immediate thought is that color scheming will lend a lot of weight to this. If one race has primarily shades of green and another race has primarily reds, particularly when in groups, all ships of similar shades are immediately recognized as belonging to the same group and as not belonging to the other group. variations in minor trim color and body shape can then denote various classes or functions within the groups.

Libervurto
16
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 23rd Feb 2013 13:22 Edited at: 23rd Feb 2013 18:48
!


Nytus Sermus
9
Years of Service
User Offline
Joined: 17th Jan 2013
Location:
Posted: 23rd Feb 2013 21:00 Edited at: 23rd Feb 2013 21:31
first off Obese im glad to see you posting about this again as i followed that yarn of threads you referred to above in the recent months- never stopping to check the date, imagine my disappointment when i realized the project had died.
sidenote: I second Ortu's Power Ranger approach to color coding, also finding ways of playing up to those color codes.

Do you feel you would ever be ambitious enough to go 3d?
After reading into the project, i thought of bringing the 3d port concept to the table, as this would not be much different if you stayed with the basic game layout, I think the benefit would be two-fold; 1: you could greatly enhance the graphics, 2: you could use 3d to fill-in alot of areas of the shell and game, like a floating camera in 3d space at some point, where normally your game layout in level could stay true to the original.

As for 100% procedural generation, i think its cool conceptually but in practice its like beating a dead horse, in the fact that you could make a minimal set of resources yourself as a foundation and a guideline and then go generational from there. In my opinion to include a majority of generated content based on a minimal resource set would still be true to the name and the original concept. You'd still be giving the users the open-ended possibilities and new content, without as much hassle of coding what you could create in an editor.
If on the other hand your married to the vintage graphics and 2d style (no offense) then thats cool too, i just like to go over the top sometimes. I had a bunch of basic 3d ships i made for this, but they seem to have been deleted from my files.!!!> But i did find a few of the objects i made as samples laying around:

===================================================================
EDIT: Dont get me wrong i think you guys work on this is great and the results, dont want to minimize the effort that's already been put into it, but maybe a somewhat new approach could revitalize the project.

You could be done already.....stop trying to re-invent the wheel.
Libervurto
16
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 23rd Feb 2013 22:12
@Nytus - thanks for the input. Space Conflict is quite a rigid and simple game so I don't think much would be gained by moving to 3D. However, the follow-up project is all about exploration and freedom so 3D is the ideal. I think a modular design is certainly a good idea for many reasons. Besides the time saved coding, it is nice to have some familiarity and cues for the player: if all space stations look similar then the player will recognize it as a space station; if warships and weapons look similar then the player can judge how formidable it is by sight alone. You cannot do this with my current ship generation algorithm, they look nice but nothing you're looking at actually means anything, it is just an image. However however, I don't want to have this familiarity all the time, I want the player to feel like they really are stepping into an alien world where nothing makes sense until they learn about it. I don't want just variation of form, I want variation of style too. So maybe a mix of the two approaches will suit best, procedurally generating components that can be stuck together, so that certain regions and races have similar technology and structures but if you go exploring you'll find new regions with alien technology and structures.

You've gotten me thinking about modularisation now. I love games where you can modify parts of the ship. I'm also thinking about what else there is that I can break down and generate procedurally, like weapons and their effects. Imagine coming across an alien ship you've never seen the likes of before and it starts attacking you with a weapon you didn't think was possible! You'd have to work out a strategy mid-battle to defeat it or get away.


Libervurto
16
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 24th Feb 2013 12:18 Edited at: 24th Feb 2013 12:45
Faction styles are beginning to get more distinguishable. Here's a shot of 12 factions with the same colour-scheme to show how the dynamic faction templates affect the designs: img

Here's a faction template going through multiple generations: see how the design gets more and more restrictive until there is no variation between ships (except shading). Notice that by the later iterations the cockpit has completely disappeared, this is because I made visible cockpits optional.


Ortu
DBPro Master
15
Years of Service
User Offline
Joined: 21st Nov 2007
Location: Austin, TX
Posted: 24th Feb 2013 19:41
looking good. have you given thought to having variable sizes for different types like smaller fighters, larger carriers etc?

Libervurto
16
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 24th Feb 2013 20:19
@Ortu -
Quote: "looking good. have you given thought to having variable sizes for different types like smaller fighters, larger carriers etc?"

Thanks. I'm not sure about that yet; the problem is I'm only going to be using the width of the screen so I don't want anything too large. It would be nice to have distinct classes though, some are distinct by chance now but I want the differences to mean something. I've just been tinkering and putting this off because I feel it might well require a total re-write. I could use different templates for different classes of ship but then we have the problem of faction style inconsistencies: if I randomly manipulate two different templates it's unlikely the styles will match. If I generate details like wings, cockpits, guns, engine and other decorations then I can generate a base body for each class from its own template, then apply the stylistic details that make it clear that these are two ships from the same race.


Libervurto
16
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 27th Feb 2013 00:09 Edited at: 27th Feb 2013 00:32
I've now stopped development of the pixel spaceship generator. There are still limitations that I'm not happy about, factions are not as distinctive as I would like for example, but I know that to rectify the problems that remain would require a total re-structuring of the algorithm; it's already doing things that it wasn't originally designed to do so I can't really push it any further. I've learned a lot in the process, primarily that procedural generation is harsh: it's ten times harder to fix problems and only once you've fully developed your algorithms do you realise their limitations. A lot of the time I've felt like I've been poking around in the dark without a clue what I'm doing, but I'm starting to get the hang of this PG stuff.

I can't believe how much it has improved since my first attempt!
FIRST : FINAL


Attachments

Login to view attachments
Ortu
DBPro Master
15
Years of Service
User Offline
Joined: 21st Nov 2007
Location: Austin, TX
Posted: 27th Feb 2013 02:52
well, any work you learn from is never wasted effort, whether it gets finished or not! good work

Libervurto
16
Years of Service
User Offline
Joined: 30th Jun 2006
Location: On Toast
Posted: 3rd Mar 2013 09:53 Edited at: 3rd Mar 2013 09:56
I was going through the spaceship code while planning an algorithm for the planets and I found a few more ways to improve things. I can't be bothered to update the OP at the moment so here's a screenshot. -->


Attachments

Login to view attachments

Login to post a reply

Server time is: 2022-12-04 01:10:34
Your offset time is: 2022-12-04 01:10:34