PDA

View Full Version : User-Generated RPG



Evolution
26-03-2011, 04:47 PM
Decided to start a project of my own, no team, no clients, just me for a change. I want to create a game that was the potential to grow on its own.

The world map is location based and you have the ability to create your own locations and you can share them with other players. The concept is still rough and I'll update you with the progress and you are free to give any advice, this allows everyone to be the developer.

If things go well I can set up a place where users upload/download content for the game and even rate content.

Galso Wiki (http://galso.wikia.com/wiki/Galso_Wiki)

Evolution
27-03-2011, 04:06 PM
Content creation can be split up into two sections; package and location creation.

Package : textures, tilesets, NPCs, etc.
Location : tile map, placement of NPCs/enemies, dialogs, etc.

Locations are built using packages. If you have not added the required packages the game will warn you that location X requires packages XYZ to be installed.

In the game directory there will be folders called "packages" and "locations" where you can paste packages/locations that users have created.

I will be adding new functionality as the project goes along and allot of features may change depending on feedback, but it will be compatible with older content as long as massive changes do not occur.

BlackShipsFillt
27-03-2011, 05:01 PM
How are these packages made? Will there be a level editor?

I'd suggest a theme something like "Little Big Planet", which essentially is : This is a simulacrum of a simulation done with poorly created props. This will allow users to feel a little comfortable about their poorly designed creations and make the bar for entry a bit lower, the bar for entry being the biggest hurdle you have to overcome with a concept like this.

If that is a bit too tricky to pull off at this point, then maybe do a science fiction theme... it'd be less organic and a little easier on users than Tolkien fantasy would be.

If users can create content, will there be any system for the content to slot into? I mean, if I create a level, could I specify a location and the level would actually be nearby other user created levels... that way the community could create a whole world together...

This sounds quite ambitious! (or maybe that's just how things look in my head) Good Luck!

Evolution
27-03-2011, 06:43 PM
How are these packages made? Will there be a level editor?
There will be a level editor. Packages are created by importing in your images, creating tilesets, assigning collision maps to a tileset, adding NPCs(stats, animations, general dialogs, role(shop keeper/enemy)), importing music, fonts & sound fx, creating game objects(eg.tree, house), these also have collision maps assigned to them. You will create location on the world map by using content in package(s).

Would the user prefer to have a separate program as the editor or would they prefer it to be integrated in the game menus?


I'd suggest a theme something like "Little Big Planet", which essentially is : This is a simulacrum of a simulation done with poorly created props. This will allow users to feel a little comfortable about their poorly designed creations and make the bar for entry a bit lower, the bar for entry being the biggest hurdle you have to overcome with a concept like this.
Sounds like a good idea. During the prototype stage multiple content packages can be created for the user to create with and we can see what the users are most comfortable working with.


If that is a bit too tricky to pull off at this point, then maybe do a science fiction theme... it'd be less organic and a little easier on users than Tolkien fantasy would be.
Science fiction was one of the themes I have an interest in since it's not done to death like the traditional medieval fantasy theme. Also a snowy theme would be different.


If users can create content, will there be any system for the content to slot into? I mean, if I create a level, could I specify a location and the level would actually be nearby other user created levels... that way the community could create a whole world together... I was thinking of having a general world map and having the user create a location and specify the location on the world map. I'm also thinking of maybe having a galaxy map with lots of different worlds which would allow for a larger variety in level types. No need to stick to a modern/current/ancient theme.


This sounds quite ambitious! (or maybe that's just how things look in my head) Good Luck!
I totally agree with you. I've decided to start my Comp Sc degree this year so I'm looking for something to fill my spare time with to prevent me from going crazy. I will be using allot of code from the game creator I am working on but with lots of changes as well.

The Dash
27-03-2011, 07:39 PM
How about a space theme? (Freelancer 2 please)

Basically the users could generate the star systems, space ships, what each planet is like, missions etc. Then they can be linked to other star systems by jump gates. The amount of gates in/out is chosen by the user when creating the map.

Basically what that allows you to do is have your own systems that are fixed with a few missions, and let players create stuff and attach them onto that. I rather like this idea as each star system is contained and can easily be attached to the network to make one massive map. Stuff like custom guns and ships might only be purchasable in the system that they are created, but can be used any where. This can drive trade routes, epic adventures to find the right gun, etc.

Seriously, get that right and i would play the **** out of it

BlackShipsFillt
27-03-2011, 08:47 PM
Oooooh!!

And to make this truly EPIC...

Do freelancer... lots of stats and purchasable upgrades... and it'd work nicely with a macro map... like you say, players can populate a solar system.

And build the level building into the game itself.... so that.... the player can spend resources they collect in the game on building a cool solar system...

Freelancer meets Minecraft == win?

Of course I imagine the first incarnations of this could be kept much simpler... but bear this idea in mind perhaps... Building levels in Minecraft is so very rewarding because the difficulty in getting those materials makes the end product have real worth. Of course the level building in Minecraft is quite powerful, whereas solar systems are usually of quite rigid design... To really touch on Minecraft's success the planets need to allow to a large level of customization (like shaping a planet like a unicorn's head and covering it in blood volcanoes).

I mean you don't have to try and create MineCraft in space... but there is something to be learned from Minecraft (since you are planning on having user generated content). User generated content has arguably never been as rewarding as it is in Minecraft. I would strongly suggest tying the content creation to a RPG system. (even if it is just spending gold).

If you want to make these levels "levels" rather than just fantastic creations, you could make it cost more to make more difficult levels. Eg the player can hire more expensive ships to protect their solar system, and pay for more skilled negotiators or harder to find spies, shops selling rarer items, more complex missions, or prettier scenery etc. That way veteran players can create difficult levels for other veteran players. And being the player who has the unbeatable level whom has beaten everyone else's level would == being awesome.

You could even bring in a ranking system... and payment for defeating opponents in your level... which would mean even when a player is not playing they are earning experience...

And there would be a lot of nuance to it. Making a purely difficult level would be rubbish. But a difficult level that has some uniquely powerful items in it would attract a lot of challengers. Or selling certain items cheaply, or producing certain goods on your planets, might attract a lot of freelance traders (who would constantly be earning you money)... So you could also be the biggest and the best through economic means.

MineCraft isn't competitive like this, and you don't have to make it competitive either, you could focus mostly on trade, but I wouldn't mind playing a game where I get to challenge players both in my RPG grinding ability and my level designing abilities (and I would be totally motivated to have the hardest, most complex, most awesome level in the game).

[edit] What if crawling through other people's levels gives you some resources to build your own level with, and having a cool level gives you money to upgrade your ship, that way the two RPG systems feed off each other. Early levels, like in Minecraft could be a pure base survival/tutorial bit, but once you are able to fend off the NPC's (and earn money off of them constantly) you are able to challenge other players.

Little Big Planet, though not as elegant as MineCraft, allows players to unlock item types and themes and such through playing the game which can then be included in levels. At the very least this would be a nice feature, because, although it doesn't wholly tie the player's success/grind to the awesomeness of the level (as in MineCraft) it does provide a decent incentive to showoff one's progress through level creation.

I'm guessing that the original implementation of this will be quite graphically starved. But if you get the system down you can always skin with eye-watering retro 3D later.

Evolution
28-03-2011, 11:40 AM
Thanks for all the feedback it's a huge help.

What if you had to spend credits in order to research more advanced items and your system only has the ability to sell items that they have researched. I also want a way to use your researched technologies to create custom unique weapons, maybe use some form of scripting if required.

I busy getting a very rough prototype ready that people can test out and we can work from there.

BlackShipsFillt
28-03-2011, 02:26 PM
Yeah. A science tree would be a good way to go.

I'm not sure how you are planning on dealing with multiple users... I'm sure you are not planning proper multiplayer... but maybe if you had a centralized level server, where people upload levels to and download user levels, you could make it massively single player.

Chevron
28-03-2011, 03:18 PM
I may be way out of my depth here but couldn't you somehow incorporate google maps street view into something like this to really make it real world locations?

Radnartjie
28-03-2011, 04:46 PM
Sounds like a Good idea... usually an RPG being Tackled alone is close to impossible. But i like the idea of User generated Content. Nice Idea :)

Evolution
29-03-2011, 10:03 AM
@BlackShipsFillt - Massively single player, for now.

@Chevron - I'm not sure about using Google Maps since we are moving the game into space.

I'm working on the rendering and content pipeline. Basically for those interested in creating ships for the game you need to supply a high(close-up) & low(distant) resolution model(wavefront .obj), diffuse(colour) map, normal map(tangent space), specular map (textures should be in a lossless compression format such as .png or .tga). The triangle count limit and texture resolution limit has not been decided yet, but larger ships will probably require a higher resolution texture. The rotation and scale of the model does not matter because it can be modified by the in game editor. After you ship is imported you select default location in which it's default bullets fire out of. Then you can place different sized slots in which the owner of the ship can use to place additional weapons created by users. The game will use a deferred rendering pipeline, here is a list of supported cards: Radeon HD 2350, GeForce FX (with driver 175.19), GeForce 6 series, GeForce 7 series, GeForce Go 7 series, Quadro FX 4000, Quadro FX 350, Quadro FX 550, Quadro FX 560, Quadro FX 1400, Quadro FX 1500, Quadro FX 5500, and all later cards.

Can someone point me in the direction of any good code to generate a planet texture?

Evolution
30-03-2011, 10:02 PM
Busy with the camera and controls. Basically I want the game to have a more arcade feel than a simulator feel. The camera is a third person camera, I also want the game to be controlled via a joypad or keyboard/mouse. I want the controls to add to the feel of the game so a nice spread out practical button layout. What button layout would you guys prefer?

BlackShipsFillt
31-03-2011, 01:39 AM
Well I would play mouse and keyboard... so WASD, space for special/jump/cloak ect and 12345 for weapons/options.

I think most games like this also offer having arrow keys and the right side of the keyboard also mapped to commands... though I haven't met anyone in years that actually uses the right side.

By "later cards" do you mean that my Radeon will be okay?

Be careful about "arcade feel". Going third person (and balancing it for third person) is great for players that take the combat very seriously, but by doing so you are losing some of the space simulator audience, which should be the backbone to a game like this.

Evil_Toaster
31-03-2011, 05:48 AM
I think most games like this also offer having arrow keys and the right side of the keyboard also mapped to commands... though I haven't met anyone in years that actually uses the right side.

I hereby reset your haven't met in years counter. We're members of the Cult 'o Left Handageness. We like it when game designers don't forget that we exist. ;)

---

Regarding the game, is it possible to make allowances for the possibility of being a giant planet eating space squid?

BlackShipsFillt
31-03-2011, 07:38 AM
Regarding the game, is it possible to make allowances for the possibility of being a giant planet eating space squid?

I don't know... does it have to be a left handed planet? Because if so then that sounds difficult.

[edit] Also, when you eat a space squid boss, could you gain it's powers like in Megaman?

Evil_Toaster
31-03-2011, 08:08 AM
I think the squid should be left handed. We need more representation in games.

How about a "Burp Planets" ability?

Luke
31-03-2011, 09:20 AM
Well I would play mouse and keyboard... so WASD, space for special/jump/cloak ect and 12345 for weapons/options.

I think most games like this also offer having arrow keys and the right side of the keyboard also mapped to commands... though I haven't met anyone in years that actually uses the right side.

I'm right handed and I personally ABHOR WASD controls. I mean, the keys aren't even in an aligned pattern! I hit E as often as I hit W. Stuff that! Not all of us grew up playing FPS games and got finger-memory that way ;) Arrows mean move, so they had better do that!!!

Etiko
31-03-2011, 12:30 PM
I'm right handed and I personally ABHOR WASD controls. I mean, the keys aren't even in an aligned pattern! I hit E as often as I hit W. Stuff that! Not all of us grew up playing FPS games and got finger-memory that way ;) Arrows mean move, so they had better do that!!!

... No.

BlackShipsFillt
31-03-2011, 04:12 PM
I think the squid should be left handed. We need more representation in games.

Perhaps that is why the squid are attacking. They feel threatened by Right-Handedness (The very word "Right" seems to imply a kind of Aldous Huxley-esque bigotry... Surely it shouldn't be "Right" and "Left", but rather "Right" and "Also Right") and so the Squid decide to pre-emptively strike the last remaining majority right-handed species: Mankind!

Of course, when they do attack, some human lefties would turn on their species and flee to the Squidy Lands of abundant left-handed keyboards and guitars. This would severely cripple mankind as Earth would lose some of its best Tennis players.

As a planet then you could go undercover, pretending to be left-handed, earning the Squid-Kind's trust, until WHAM... you eat them.

BlackShipsFillt
31-03-2011, 04:13 PM
Double post, sorry

Evil_Toaster
01-04-2011, 07:36 PM
I'm not sure you read the original bit right, I was saying you should -be- the giant squid that eats planets.

However, since you've already gone and made up a whole plot there involving an undercover planet that eats squids... well, why not. Speaking of tennis, it could revolve around the squids dominating humankind with their superior tennis abilities, what with being able to hold up to eight tennis rackets at once and all. The planet would also need to find itself some arms somewhere if it wants to join in...

That's probably moving a -little- too far away from what this game is trying to do though. :)

BlackShipsFillt
02-04-2011, 08:37 AM
So, back to User-Generated RPG, we're thinking having the ability to build Death Star class space ships that can be powered by Electric Space Squid juices?

Or maybe just rain down a lot of death and have in this universe gigantic squid-like beings? Like the Budong in Farscape?

Evolution
02-04-2011, 11:28 PM
Busy studying Cry Engine 3 and migrating rendering techniques from the engine, also using old XNA work. What I have so far is a functional deferred renderer which makes use of best fit normals which gives you 50X extra precision when storing normals in a 24bit buffer. I need to still work on improving the texture compression for the normals and you artists needs to save the normal maps with at least 16bit/channel precision to improve quality when compressing. Color maps will also need to be stored and edited with 16bit/channel precision to make use of the rendering techniques used in Cry Engine 3. So overall textures should be in 16bit/channel.

Will post some screenshots tomorrow for those interested.

herman.tulleken
03-04-2011, 01:15 AM
Will post some screenshots tomorrow for those interested.
Cool, show us!

edg3
03-04-2011, 08:25 AM
You're going to need an extensive tutorial on how to add content for us noobs that read all the stuff you said that was the idea, because it went way over my head :P

dislekcia
03-04-2011, 01:37 PM
Busy studying Cry Engine 3 and migrating rendering techniques from the engine, also using old XNA work. What I have so far is a functional deferred renderer which makes use of best fit normals which gives you 50X extra precision when storing normals in a 24bit buffer. I need to still work on improving the texture compression for the normals and you artists needs to save the normal maps with at least 16bit/channel precision to improve quality when compressing. Color maps will also need to be stored and edited with 16bit/channel precision to make use of the rendering techniques used in Cry Engine 3. So overall textures should be in 16bit/channel.

Will post some screenshots tomorrow for those interested.

So, this isn't going to be easier to use than RPGmaker, is it?

Not that I'm sure normal compression is an important part of RPG manufacture, it just seems like user generated content means amazingly usable editors, not technical wizardry. Right now this sounds more like one of those interminable collaborative projects than something people will actually play one day.

Successful UGC is all about the constraints placed on users and the tools they have access to in order to simplify the effort required to get started, I'm not hearing enough thinking about that angle.

BlackShipsFillt
03-04-2011, 03:01 PM
I might be a bit confused about this project... but my understanding of User-Generated-Content is something like Little Big Planet, ie. Users have access to the building blocks of the game and get to reorganize them in interesting ways.

If there are no building blocks then that is just other people making parts of the game. Those people only become "users" once they are actually playing the game.

Plus good user generated content is, like Dis says, all about making content creation really easy, and, ideally, quite powerful.

If user's are getting control right down to modeling their own ships then there are going to have to be custom tools for that... Like a Spore ship creator. Which would be sweet.

I don't know why normal maps are coming into this... if making normal maps is required for making content for this game then the entry level for participation in this game is 2 years of studying animation. And frankly, if you've ever met a 3D artist, you will know that this is not the sort of game that interests them.

And, furthermore, the kind of person that would get most excited about this does not care about normal maps (think about Minecraft for a second). I'm not saying it shouldn't look good, I'm just saying that the audience for this game is not the same audience as for Crysis. In fact the audiences don't even overlap.

Little Big Planet has nicely rendered graphics... but it goes to great lengths to make itself look wonky and poorly constructed in order to make players feel more comfortable making levels. Low quality graphics can be used as a bonus in this sort of game, provided they are still charming.

Have a look at this... I'm not sure how successful financially this project has been/will be, but the entry level for participation seems acceptably low (although I feel it should be lower still): http://www.8bit.neverdaunt.com/

Evolution
03-04-2011, 07:18 PM
http://i51.tinypic.com/2u8uwkk.png

Techniques
deferred shading
soft shadows
bloom

Next to add: reflection mapping, HDR

Modelling ships don't actually fall into the actual game(that's the reason for complexity) it's just if artists want to help me out to add base content which other user content is built on top of. Will give you guys more info tomorrow morning and reply to questions.

BlackShipsFillt
03-04-2011, 08:44 PM
Ah, that makes more sense.

Deferred Shading looks technically very impressive.

cairnswm
04-04-2011, 05:39 AM
Best ever shareware game that allows user developed content (levels, monsters etc) is "Doctor Lunatic Supreme with cheese". Dont know if it is still available on the net but if you are looking at a user created content game take a look at it.

BlackShipsFillt
04-04-2011, 08:04 AM
That sounds made up :)

dislekcia
04-04-2011, 10:24 AM
Cairnswm's been talking about Dr Lunatic Supreme With Cheese for years and years ;)

Evolution: Why have soft-shadows when you're working on a space game? Space is known for not having air, which means no atmospheric scattering, which means sharp shadows... Either way, I'd still urge you to focus on tool design and ease of participation instead of technical milestones - I think you're moving away from having something playable that fits your original vision.

Evolution
04-04-2011, 11:17 AM
Will be using 2 shadowing techniques variance shadow mapping and plain shadow mapping. Will switch between techniques based on you graphics settings. Normal maps are actually used allot in commercial games because it gives the impression of more detail without adding extra polygons and it's used in Little Big Planet, I think it also uses deferred shading. Specular maps are a great way to distinguish between different surfaces on the same model, metal panels on a ship will have more specular highlights and reflect more of the surrounding environment.

On another note I'm getting bored of writing out shaders so going to work on the user interface which will be one of the key aspects in content creation. Any ideas on how to improve usability?

BlackShipsFillt
04-04-2011, 01:28 PM
Any ideas on how to improve usability?

Well anything you do at this point, provided it is usable, would improve usability :P

What do you mean by improve usability? Do you mean improve on the standard third person space simulator? Or do you mean improve usability on a hypothetical user-content-RPG?

What content do you see actually being user generated?

Evolution
04-04-2011, 01:45 PM
By that I mean interface layout. How would you want to switch between editing your ship/system. The basic content that users can create is their solar system and building of and purchasing additional systems. How should you interact with your research menu, etc. Their are also different inventory management system, basically anything involved with accessing features in the game and how you go about doing things.

Fengol
04-04-2011, 01:51 PM
Any ideas on how to improve usability?

I highly recommend http://designinginterfaces.com/

I bought it a couple of years ago and it's been an invaluable resource.

Evolution
04-04-2011, 09:49 PM
When looking for a book a usually check amazon and compare reviews of similar books and choose the best one out of them. I came up with this book... Designing with the Mind in Mind: Simple Guide to Understanding User Interface Design Rules (http://www.amazon.com/gp/product/012375030X/ref=pd_lpo_k2_dp_sr_1?pf_rd_p=1278548962&pf_rd_s=lpo-top-stripe-1&pf_rd_t=201&pf_rd_i=1568843224&pf_rd_m=ATVPDKIKX0DER&pf_rd_r=0T86YDR0SPWJDEPF46X1)

BlackShipsFillt
05-04-2011, 09:58 AM
Are you going to be able to edit the game at any time... or only when not adventuring?

I mean do you have to return to your solar system to edit it? In which case editing mode would initiate when you do. But if this is the case then ship editing may take place at times when system editing does not.

I would have to give it a bunch of thought, but off the top of my head you are going to want to have an initial option of: Ship/System. And then tabs or little buttons on the edge of the screen somewhere to switch between them. But ultimately advanced users are going to want hotkeys... like the "I" and "C" in Diablo.

Are you thinking of a real rendered solar system view for editing or are you thinking about iconizing things?

Also do you have a basic list what things are actually going to be edited? Are there going to be so many that you'll need separate editing modes within a editing mode (like one for defenses, one for weapons... or one for technology and one for ship construction).

I mean can you place planets for instance... and can they be of different types (like a mechanical planet like a death star that is good for defenses, or a green planet that is good for food, or a gas giant for resources)...

Can planets be selected and upgraded?

Can the star be selected and upgraded?

Can the player place things other than planets... like orbiting scanner arrays, orbiting defense stations, zero gravity research facilities, orbiting astroid mining facilities, secret research facilities, orbiting hotels etc.

Does there need to be feedback as to how close the planet is to the sun when placing it... And are there criteria when creating a planet? eg. the sun must be big enough to support it's weight, the player must have enough money etc.

When upgrading a planet what options does the player have? Is the player placing industries, defenses, cities and performing terraforming... can the player also create moons, space stations and orbiting defenses?

Do the planet's industries affect the player's stats? Eg research stations speed up research, Mines produce money, Construction facilities affect speed of getting new equipment?

Are there a similar number of different kinds of resources as in Freelancer... And resources have different trading prices... So I can make a profit selling my noble gasses over at a nearby system and in return bring back a bunch of heavy metals my construction yard needs.

Would some of the resource trading take place automatically? (at a cost perhaps) And would players be able to set the prices that they sell their resources at?

Do the planets have upkeep? Eg Research facilities cost money over time.

Does population matter? ie. cities provide personnel for other industries. And are their mechanisms to attract more and better populations. Eg. Building entertainment or raising pay.

Are there trade routes between planets that can be established? Or do planets trade automatically... or are they not simulated at all?

Can there be nearby friendly solar systems? With any kinds of diplomatic deals.

Can there be enemy systems, that the player has declared war on?

Can Warp Gates (like in Freelancer) be built (and upgraded) that open quick travel to other systems (and perhaps produce trade or are simply convenient to the player), and allow the player not to have to rely completely on NPC systems for transport.

Will there be a research screen that can be opened at any time... because that would add another option to the ship/system layout.

Would there be a ship-research screen and a system-research screen... or would there be one research screen split into ship technologies and system technologies... or would ship and system technologies be part of one research tree.

Would a research screen have tabs for different kinds of technology... defensive, power production, weaponry etc. And allow the user to switch between them.

How exactly does the player see their system... do they see a overhead view of it and are able to select different planets and platforms and receive different context menus about them. Can the player zoom in and fiddle with things like moons, or even zoom in really close and select individual buildings.

Or does the player fly around in their ship and adjust things by clicking on nearby objects?

How oversized are the objects in this game... in Freelancer solar systems were much closer together than they really should be and smaller objects were not nearly as small as they should have been. ie. space stations were oversized compared to their planets and planets were oversized compared to their stars. What I mean is the scale difference was reduced to make the game more manageable...

I would recommend making the scale difference even less, making it more cartoony, closer to the scale difference in Spore... but that is just me, I'm not fond of loads of wasted space and tedious travel time. Having planets and space stations bigger than they should be will make them easier to select as well.

Basically the thing about user interface design that I try to stick to is as few clicks as possible to get to any command... and each page of menus/information should be confined to a specific set of tasks.

Players like powerful menus... eg. a Research menu that can be selected from anywhere is very powerful (it possibly affects the research of multiple research stations) and it is much easier to get to than finding and selecting a research station and then only affecting research. If you can combine a bunch of smaller buttons/options to make fewer required trivial actions for the player then you always should.

Anyway... I could give more feedback if I knew what you plan on allowing the player to do in the game.

BlackShipsFillt
06-04-2011, 09:48 AM
Here's a overhead system view... it's iOs, but it is an MMO and it looks usable (it's a lot like what I have in my head for system building), but a bit clicky to achieve anything:


http://www.youtube.com/watch?v=Y4kw0bilZDE&feature=player_embedded

But I don't know if this is what you are thinking for system building at all. Of course this is focussed on a strategy game experience, so there is a lot unit commanding stuff and management/tycoon stuff that would not need to be in a User-Generated-Freelancer.

Evolution
11-04-2011, 01:11 PM
You really went all out with the questions! :LP::LP::left::LK::HP:


Are you going to be able to edit the game at any time... or only when not adventuring?

Preferably at any time but not during a battle.


I mean do you have to return to your solar system to edit it? In which case editing mode would initiate when you do. But if this is the case then ship editing may take place at times when system editing does not.

Ship editing should take place at any space station.


I would have to give it a bunch of thought, but off the top of my head you are going to want to have an initial option of: Ship/System. And then tabs or little buttons on the edge of the screen somewhere to switch between them. But ultimately advanced users are going to want hotkeys... like the "I" and "C" in Diablo.

All of which sounds like it should be implemented in this manner.


Are you thinking of a real rendered solar system view for editing or are you thinking about iconizing things?

3d icons, like miniature planets with non realistic scaling.


Also do you have a basic list what things are actually going to be edited? Are there going to be so many that you'll need separate editing modes within a editing mode (like one for defenses, one for weapons... or one for technology and one for ship construction).

It's still at a concept stage but I can say that there will different editing modes.


I mean can you place planets for instance... and can they be of different types (like a mechanical planet like a death star that is good for defenses, or a green planet that is good for food, or a gas giant for resources)...

Sounds interesting! One of my focusses is to give the gamer a unique experience and this is one way it can be accomplished with proper effort. Will need to look in this further.


Can planets be selected and upgraded?

Definitely!


Can the star be selected and upgraded?

Maybe customised but I'm not sure how you could upgrade it.


Can the player place things other than planets... like orbiting scanner arrays, orbiting defense stations, zero gravity research facilities, orbiting astroid mining facilities, secret research facilities, orbiting hotels etc.

All of which are interesting ideas which needs to be tested first.


Does there need to be feedback as to how close the planet is to the sun when placing it... And are there criteria when creating a planet? eg. the sun must be big enough to support it's weight, the player must have enough money etc.

I was thinking of having rings which you place a purchased planet on. Say each system has a set amount of rings which you can use to place planets on. Maybe have systems with larger suns which supports more rings to place planets. Planets should never be larger than the sun.


When upgrading a planet what options does the player have? Is the player placing industries, defenses, cities and performing terraforming... can the player also create moons, space stations and orbiting defenses?

Too soon for now, lets me first get planet placement in the game. One thing at a time.


Do the planet's industries affect the player's stats? Eg research stations speed up research, Mines produce money, Construction facilities affect speed of getting new equipment?

Yeah sounds about right.


Are there a similar number of different kinds of resources as in Freelancer... And resources have different trading prices... So I can make a profit selling my noble gasses over at a nearby system and in return bring back a bunch of heavy metals my construction yard needs.

Trading will be in the game, which will involve selling and buying items at the right price/place.


Would some of the resource trading take place automatically? (at a cost perhaps) And would players be able to set the prices that they sell their resources at?

Can use trade routes which bring income in steadily.


Do the planets have upkeep? Eg Research facilities cost money over time.

Can't say right now.


Does population matter? ie. cities provide personnel for other industries. And are their mechanisms to attract more and better populations. Eg. Building entertainment or raising pay.

This depends on the complexity of the game I'm trying to make.


Are there trade routes between planets that can be established? Or do planets trade automatically... or are they not simulated at all?

Answered above.


Can there be nearby friendly solar systems? With any kinds of diplomatic deals.

Yeah for trading purposes, maybe to use as allies in war.


Can there be enemy systems, that the player has declared war on?

Sure.


Can Warp Gates (like in Freelancer) be built (and upgraded) that open quick travel to other systems (and perhaps produce trade or are simply convenient to the player), and allow the player not to have to rely completely on NPC systems for transport.

It might be the only means of transport.


Will there be a research screen that can be opened at any time... because that would add another option to the ship/system layout.

Yeah.


Would there be a ship-research screen and a system-research screen... or would there be one research screen split into ship technologies and system technologies... or would ship and system technologies be part of one research tree.

Not sure yet.


Would a research screen have tabs for different kinds of technology... defensive, power production, weaponry etc. And allow the user to switch between them.

Definitely tabbed to increase usability.


How exactly does the player see their system... do they see a overhead view of it and are able to select different planets and platforms and receive different context menus about them. Can the player zoom in and fiddle with things like moons, or even zoom in really close and select individual buildings.

One step at a time.


Or does the player fly around in their ship and adjust things by clicking on nearby objects?

I don't think it's a good idea.


How oversized are the objects in this game... in Freelancer solar systems were much closer together than they really should be and smaller objects were not nearly as small as they should have been. ie. space stations were oversized compared to their planets and planets were oversized compared to their stars. What I mean is the scale difference was reduced to make the game more manageable...

Realistic sizes will also be a problem with rendering but I also want the scale to be there so I will make things look more realistically sized if you compare it to Freelancer.


I would recommend making the scale difference even less, making it more cartoony, closer to the scale difference in Spore... but that is just me, I'm not fond of loads of wasted space and tedious travel time. Having planets and space stations bigger than they should be will make them easier to select as well.

This all depends on the type of game it turns out to be. At the moment I will be testing things out allot and go with what ever works best.


Basically the thing about user interface design that I try to stick to is as few clicks as possible to get to any command... and each page of menus/information should be confined to a specific set of tasks.

True. Also add in fast screen transitions. I hate it when games have bulky menus which take forever to move around in.


Players like powerful menus... eg. a Research menu that can be selected from anywhere is very powerful (it possibly affects the research of multiple research stations) and it is much easier to get to than finding and selecting a research station and then only affecting research. If you can combine a bunch of smaller buttons/options to make fewer required trivial actions for the player then you always should.

The idea is to separate the building part from the flying around parts. The only time you want to fly to a planet is when you want to blow it up or trade with them.


Anyway... I could give more feedback if I knew what you plan on allowing the player to do in the game.

If you could PM me a means of contacting you via skype/gtalk/msn then I can keep you up to date with progress.

I like the interface in the iPhone game it looks good and is usable for allot of things. I will not use vertical tabs only horizontal and have a joypad's top buttons used to navigate between tabs.

I've been doing lots of research(reason for late reply) last week on how to build the game in a way the would prevent problems later on in development, I also managed to get a basic 3rd person camera working and got the controls set up to move your ship around.

Evolution
17-04-2011, 05:29 PM
Busy doing optimizations. Here's screenshots of the game rendering 4097 ships(blinn-phong shaded) at 60fps on a 9600gt (1600x900 resolution) using 4 levels of detail meshes. With this method I'm able to get 5-10 times more meshes rendered but there are still allot of other ways to make it faster. I've tweaked it so that you don't notice the level of detail switching even at full HD resolutions.

http://i56.tinypic.com/2yuy92t.png
http://i55.tinypic.com/2el9mz8.png



On another note... I've added a light pre-pass shader which allows for thousands of lights to be added to a scene.

dislekcia
17-04-2011, 11:00 PM
So how is this helping you get to gameplay?

xyber
18-04-2011, 09:21 AM
So how is this helping you get to gameplay?

You would ask the same thing of Notch while he was working on the engine tech for Minecraft?
Seems people are not allowed to post about engine/game tech they are working on, on these forums, without getting trolled.

Squid
18-04-2011, 11:57 AM
You would ask the same thing of Notch while he was working on the engine tech for Minecraft?
Seems people are not allowed to post about engine/game tech they are working on, on these forums, without getting trolled.

Game development should never start with superfluous graphics tech.

Now I understand that everyone is really proud of their programming skills, but engines already exist. You can't create technology that's up to the standard of the AAA games we play every day. So why bother? Rather make a fun game.

This is the game.dev forum, if you want to show off your programming, do it somewhere else. Were interested in games here, post some gameplay and you're much more likely to get positive feedback.

dislekcia
18-04-2011, 12:51 PM
You would ask the same thing of Notch while he was working on the engine tech for Minecraft?
Seems people are not allowed to post about engine/game tech they are working on, on these forums, without getting trolled.

Yeah, I would. I didn't have to, cos I could actually play Minecraft. I'd ask any indie dev exactly the same question... Scratch that, I'd ask any GAME dev how they're moving towards gameplay.

Why is it trolling to ask what the plan is to turn something into a game that people can play? We've all seen the results (or lack thereof) of getting stuck working on tech that never goes anywhere. We've all seen the benefits of pushing for a playable release. Evolution has set himself a tricky goal here, one that he's actively making harder for himself: A deferred shader engine doesn't seem to do anything to lighten the content creation burden for his users that are supposed to be the ones making everything.

Overreact all you want, but calling a question that makes total sense "trolling" doesn't help anyone.

BlackShipsFillt
18-04-2011, 02:11 PM
Well, the bigger the tech on the game gets the harder it will be to prototype the gameplay because greater complexity == longer time doing anything...

I believe a very sound argument could be made for avoiding all unnecessary complexity before getting something playable.

Not that I am not impressed by deferred renderers. Because I am impressed... very impressed actually. Deferred rendering is something I cannot do. But this sort of thing will actually make the already difficult task Evolution is engaging in much much more difficult.

If Evolution wants to develop a great engine then I am totally cool with that, but it would be remiss not to point out that he is harming his prospects of developing a great game by engaging in the late game-development systems first.

(Unless he has a totally bullet-proof, tried-and-tested design of course. Only in such a case would starting with the engine be most efficient)

Unless we are reading this wrong... Maybe Evolution is prototyping the graphics first, and then plans to prototype the gameplay separately (ie. without LOD meshes and deferred rendering etc)... because that would not be inefficient, just backwards.

xyber
18-04-2011, 02:19 PM
@dis, your posts before that screeny was constructive. I just thought this last one was kinda trolling. I mean, how is this helping gameplay? Well, without it he can't get to that.

@Squid, engine dev and tech is just as much part of gamedev as gameplay code and design. I do not see a rules section in this forum which states members are not allowed to post about certain parts of the process. Also, not everyone wants to use existing engines and he might have reasons for going this way. I am also a big supporter of using existing tech where posisble but do not go around thinking I'm superior and know more than other if they do not do exactly what I do.

You guys are just killing this forum by acting like this. I for one do not post here much cause of people thinking we are not allowed to post about this or that. Jacques tried a few times and got flamed, and I can't see why Jarrod should bother after this. At least Evan was very constructive in his replies.

For everyone else, we welcome people from all backgrounds and interrests to post on SA gamedev and do not tolerate trolling and one line flames. This is not the only gamedev forum around and you do not have to put up with this when you want to show people what you are doing for a hobby or job.

xyber
18-04-2011, 02:21 PM
Well, the bigger the tech on the game gets the harder it will be to prototype the gameplay because greater complexity == longer time doing anything...

I believe a very sound argument could be made for avoiding all unnecessary complexity before getting something playable.

Not that I am not impressed by deferred renderers. Because I am impressed... very impressed actually. Deferred rendering is something I cannot do. But this sort of thing will actually make the already difficult task Evolution is engaging in much much more difficult.

If Evolution wants to develop a great engine then I am totally cool with that, but it would be remiss not to point out that he is harming his prospects of developing a great game by engaging in the late game-development systems first.

(Unless he has a totally bullet-proof, tried-and-tested design of course. Only in such a case would starting with the engine be most efficient)

Evo is going a bit overboard with trying to put all the tech in now, but it could also be said that he wants to see what he is capable of doing with the tech before going too far with the design. Maybe his technology can only handle this or that size of world or so many object or won;t be able to render normal mapped objects, etc. It is easy to know what is possible if you are familier with a technology like Unity, but he wants to build the game on his own engine.

BlackShipsFillt
18-04-2011, 03:59 PM
But it could also be said that he wants to see what he is capable of doing with the tech before going too far with the design.

Yeah! That totally could be the case, and that would definitely be a smart thing to do, so I hope that is the case. I hope he isn't planning to wait until all the tech is in and then developing the game (which is the impression Evo is giving off), because that may make the task of developing a good game effectively impossible.

I guess at this point the question to ask is: Is this helping Evo get to gameplay?


engine dev and tech is just as much part of gamedev as gameplay code and design.

I think I know exactly where Disleksia is coming from on this one. There have been a lot of South African projects that have burnt out because of pursuing technology. Of course the counter argument would be that there have also been a ton of discontinued games. I kind of fall on the rather-just-make a game side of the argument because I see those failed games as being smaller in scope and I tend to look at the massive amount of work that went into those tech demos say to myself "Just imagine what they could have done if they had tried to make a game instead of spending all that effort on vapourware. Imagine how much more awesome South African Game Dev Industry would be now if we had games, and game development experience, to show for that effort."

I guess people who want to make engine development a career see it very differently. Because of course, just like with games, you have got to have many failed attempts before you get one right. The sad part is only that they ostensibly are making games when no games actually come of it.

Of course I don't even like programming, so I would see it that way.

I'm not against engines being shown off on this forum... but my understanding is that there is a strong feeling that game.dev is a forum more about game development than software development. (if that makes sense) Frankly I like this forum that way, but I don't think there is any need to enforce such a policy and anyway, clearly Evo is posting here because he genuinely wants input on gameplay.

Squid
18-04-2011, 04:42 PM
@Squid, engine dev and tech is just as much part of gamedev as gameplay code and design.

I disagree. The "game" itself is just a vehicle for the experience.

From what I've seen on these forums. Game "developers" tend to fall into two categories. Those who care about game design, and those who care about game programming. The former seem to use programming as a means to an end, a way to get people to share the experience.

If you're in it for the challenge of programming or the thrill of making your own engine, that's great, but you probably won't find much joy on this forum.

dislekcia
18-04-2011, 04:59 PM
Um. Evolution could quite simply deal with my initial (sinful, trolling, bastardly, etc) question by simply saying: "Oh, I want to have hordes of enemies onscreen at the same time, so I'm messing with the LOD stuff before I start working on the ship editors so that I know what options to give players when they're in edit mode. Should players be more focused on editing AI behaviors, for instance." Then we could have a discussion and maybe the game that emerged from that would be better, yay!

This is an old, useless, argument that's being somehow reiterated by the same people. I think we're having it again not because of any new info or perspectives, but because people just want to argue:

Look, if working on tech first worked, we'd have way more indie games out there and indie devs the world over wouldn't all tell you the same ****ing thing that this forum is built on: Game first, tech later. You can argue with that all you want, but that arguing will never produce a game, so I don't really care about it that much.

It seems far more logical to me that certain types of people who self-identify as "engine devs" prefer solving the sorts of problems that are already quite well documented: If you want to build a deferred shading system, you just have to read a lot and you'll understand what you need to do. It's not the same sort of problem as trying to relate to the people that are playing what you're building and trying to get into their heads... The sad part is that engine-dev isn't the answer to not wanting to get involved with other people: In the industry you'd be building engines FOR people, so you'd still have to get into their heads and figure out what it is they WANT to do (in your system).

I really don't get why "engine devs" keep overreacting to simple, honest questions. Just answer the goddamn thing, maybe it'll lead to a new idea. It's not rocket-surgery and it's not that bloody scary. Nobody's getting chased away, people who don't want to make games simply aren't making them, so they run out of stuff to say here.

xyber
18-04-2011, 07:47 PM
Well said dis.


I disagree. The "game" itself is just a vehicle for the experience.
Squid, I have no idea what you are going on about.
I said, engine dev is just as much part of the game development process as design and gameplay code. This is Game.Dev afterall so don't chase people away if they wanna talk about something else than just design.

xyber
18-04-2011, 08:25 PM
You would ask the same thing of Notch while he was working on the engine tech for Minecraft?
Seems people are not allowed to post about engine/game tech they are working on, on these forums, without getting trolled.

I like how what I posted here gained me an "infraction", nice one ;)
Typical of these forums. The mods can flame and troll other people but dare I point it out. Looking at you (dislekcia), always having something negative to say when someone post something about engine tech.

Well, if this one gained me a ban or somesuch I'll be over at www.sagamedev.com if anyone is interrested, and will post there about the games our company is working on.

dislekcia
18-04-2011, 11:08 PM
I like how what I posted here gained me an "infraction", nice one ;)
Typical of these forums. The mods can flame and troll other people but dare I point it out. Looking at you (dislekcia), always having something negative to say when someone post something about engine tech.

Well, if this one gained me a ban or somesuch I'll be over at www.sagamedev.com if anyone is interrested, and will post there about the games our company is working on.

The only way asking a question is negative is when someone assumes that there's an obvious answer designed to insult someone. Your taking offense isn't my problem, this forum is.

Evo: Shout and I'll kill the retarded flame posts to make your thread about your stuff again.

BlackShipsFillt
18-04-2011, 11:24 PM
Evo: Shout and I'll kill the retarded flame posts to make your thread about your stuff again.

You may as well anyway... I think everyone knew where everyone else stood on this before the discussion began.

The only thing I'd like to say is that, if Evo hasn't considered it already, that prototyping gameplay is much faster with a simple system. More code in the project == slower the iterations and, most probably, a weaker game as a result.

Evolution
19-04-2011, 05:19 PM
Spent yesterday trying to get 100 000 ships rendered but decided to put that down and started working on the game today. First thing I added was the sky box, going to spend tomorrow working on the menus.

http://i51.tinypic.com/126ab7q.png

The interface was photo shopped in, basically a few bars and weapon selection. Shading was disabled.

BlackShipsFillt
20-04-2011, 01:58 AM
Yay! What are those buttons supposed to do?

Evolution
20-04-2011, 04:43 AM
Yay! What are those buttons supposed to do?

Let's call them weapons for now. Basically a mock design that won't be in the final version. Also I would prefer having three thin bars that represents shields, armor & energy. I like the idea of using energy instead of ammo, kind of like those star control games.

Anyone interested in creating space backgrounds for the game can use this tool. (Spacescape (http://alexcpeterson.com/spacescape))

Evolution
20-04-2011, 07:56 AM
At the main menu there will be a customizations menu where you change the appearance of the game. The first option will be to select a skybox which other users can create. I will also want to start a wiki explaining how to customize the game and add content. Adding new content will be a simple dropping content into folders and the game will search it's folders for new content.

Evolution
20-04-2011, 08:22 AM
Decided on a name for my game, basically it's a name from an old project of mine.

Here's the wiki link.

Galso Wiki (http://galso.wikia.com/wiki/Galso_Wiki)

Evolution
20-04-2011, 10:21 AM
Here's an old pic that I never showed you guys.

http://i1114.photobucket.com/albums/k532/Jarrod_Swartz/rpg_screenshot_002.png

Evolution
21-04-2011, 01:07 PM
I want to talk about the ship editor. So I was think if it would be a good idea to allow the user to create their ship by placing pieces like in Spore. Have either whole ships or they can build a custom ship using pieces. I want to create a separate tool that ships with the game for artists to use to create these ship pieces. It will be a basic import mesh and piece the texture to the ship piece and store specular and bump maps as optional. Also correct the rotation of the mesh then export it for other users to use to construct their ship with. While users create their ship they can only buy/create ships in their rank, ships with a higher ranks have higher stats and upgradable options. Higher ranked ships will be larger. I also want the pilot to have their own stats and skills, like accuracy +20% or shields +50%. As you get exp you can purchase skills using pilot points. Anyone want to add to that?

Evolution
21-04-2011, 03:05 PM
I'm busy with the ship class and deciding how the ship should accelerate and move in the game. How is reverse acceleration handled? Does you ship come to a stand still when you release acceleration? I'm a noob when it comes to 3d space games, can anyone explain to me how exactly controls and ship movement work?

Evolution
21-04-2011, 03:14 PM
The game uses 3 variables to use with the physics and timing.

ElapsedTime ( time since last frame )
GameSpeed ( useful if you want to slow down time, eg. cryo stasis module, etc. )
GameTime(GamePhysicsTime) ( ElapsedTime*GameSpeed )

BlackShipsFillt
21-04-2011, 04:28 PM
If I recall correctly in Freelancer the ship would slow down pretty quickly after the forward key was released (it would actually show some reverse boosters firing, but of course they were not proportional to any kind of realistic space physics).

Also in Freelancer ships would accelerate towards a sort of maximum speed, slowing down acceleration towards the end. If extra boosters were applied then this maximum speed would be a bit higher.

Freelancer's heavy friction in space physics were obviously very unrealistic... but easy to control...

I would suggest something like:



if (BoostersOn){
ForwardAccelerationVector = (MaxForwardVector * 1.5f - ForwardVector) * ElapsedTime;
ReverseThrustersM = 0;
} else if (ForwardThrustersOn){
ForwardAccelerationVector = (MaxForwardVector - ForwardVector) * ElapsedTime;
ReverseThrustersM = 0;
} else {
ReverseThrustersM = ReverseThrustersM * (1 - ElapsedTime * 10) + 4 * ElapsedTime * 10;
ForwardAccelerationVector = -ForwardVector * ElapsedTime * ReverseThrustersM;
}
ForwardVector += ForwardAccelerationVector * ElapsedTime;


I think that works, that is obviously only for forward, although I think Freelancer uses a heavily tweaked version of something like this. The slowing down Lerps towards Lerping down, that way if you release the key for a moment it won't suddenly start stopping (which might feel unspacelike).

Also, Spore ship-creation would be ideal/awesome!

Gazza_N
21-04-2011, 04:50 PM
None of the space sims I've played allow for reverse movement, and generally have "space friction" that slows you down if you don't maintain thrust. Acceleration is normally handled with a throttle - you set your desired speed and the ship accelerates/decelerates to match (with "max speed" and "full stop" buttons available as well). However, Wing Commander Prophecy allowed you to "slide" - you could hold a key down to continue your movement along a vector at your current velocity while allowing you to alter your orientation. Releasing the key instantly sent you forward at your new vector, which was awesome during dogfights. I hear that some sims do incorporate Newtonian physics (I-War springs to mind, although I've never played it), but generally they're arcade flight sims in space, rather than all-out realistic zero-G combat simulations.

Not to say that you can't allow full 3D movement. In fact, it would be quite interesting - kinda like Descent but with much bigger environments and higher speeds. Nothing says you have to stick to convention, other than that these games were easy to pick up, and easy control of the ship was generally the priority. :3

SkinkLizzard
21-04-2011, 05:15 PM
I'm pretty sure x3 terran conflict had reverse, it handled pretty much like mech warrior in terms of accel decel. I did play it a while ago so I might be wrong

BlackShipsFillt
21-04-2011, 06:07 PM
NAcceleration is normally handled with a throttle - you set your desired speed and the ship accelerates/decelerates to match (with "max speed" and "full stop" buttons available as well).

Oh yeah! I forgot about throttle. Forward in Freelancer increases the desired max speed and backwards reduces it (not what I said it did).

Although I've never been a fan of throttle, I kind of get it in Freelancer because there were huge stretches of just going forward, but in that scenario I would rather just press a "Max Speed" button.

The throttle mechanic means that dog fights will always entail circling round each other trying to get an angle on them (because it is slow to slow down or accelerate)... which is kind of how space fights always work. I'm kind of more of a fan of strafing and shooting... but I think this audience probably wants dogfights.

Evil_Toaster
21-04-2011, 06:33 PM
I see no reason why space ships shouldn't be able to strafe too (it's inherent in pretty much all top down space shooters). Theoretically, you can stick engines wherever you want on one. I for one would welcome more 1st/3rd person space shooters with strafing, but that's because I personally find dog-fight style maneuvers annoying. All that endless circling around hoping to get a shot in...

Gazza_N
21-04-2011, 07:01 PM
I'd welcome strafing myself. No reason you can't pull a Freelancer and have Cruise Engines for high-speed linear long-distance travel, and low-speed lateral thrusters for combat with Descent-style six degrees of movement. It would make for awesome combat, imo. Vertical strafing!

(Also, I recall that Freelancer had that Wing Commander-style sliding as well. I wonder why...? :P).

Evolution
24-04-2011, 09:14 AM
I've decided to use Google Docs to allow for anyone with the link (https://docs.google.com/document/d/1ie2W1IfJtdci932128UtBoWSZh38gtZe0Im-a7Ofe64/edit?hl=en&authkey=CNP5nIAD) to edit the game design document. This is to allow for a quicker transfer of ideas and a place to finalize them. This will allow me to spend more time on programming. This also allows you guys to design a game that you would like and put exactly what you want in detail so that I don't have to do the other 99% of design work. This is an experiment and depending on how things work out I might change a few things with this process.

Galso Game Design Document (https://docs.google.com/document/d/1ie2W1IfJtdci932128UtBoWSZh38gtZe0Im-a7Ofe64/edit?hl=en&authkey=CNP5nIAD)

Evolution
28-04-2011, 11:29 AM
I'm waiting for the new month when I get more internet to upload a tool for 3d modelers. The tool will allow to add 3d items/models into the game. For now you select a model and textures associated. You can also rotate the object so it appears correctly in the game. You can also select it's size. After all that you export it as a (.gmd)(galso model) file which the game will pick up. What other features should I be adding?

Say you have a ship should I have it so that you can place objects(engines/weapons/modules) directly on the ship that are not cosmetic like in spore and actually of of any use. Each ship can have a limit on the amount of weight that they can carry so you can't have a hundred weapons on a single ship. What you people think?

Evolution
02-05-2011, 06:27 PM
Will probably get scolded for posting this here...

For those interested I developed some new tech. I discovered a way to increase the precision of normal map compression with next to no impact on performance. I'm hoping that this is original work since I never came across the technique through my research.

http://i56.tinypic.com/2dgujj4.png
Left : Uncompressed
Middle : DXT1 Compressed, notice artifacts caused by compression
Right : DXT1 Compression Using New Technique, notice the reduction in artifacts

http://i55.tinypic.com/b3jt50.png
Top Right : Uncompressed Normal Map
Top Left : 3Dc Compression
Bottom Right : DXT1 Compression
Bottom Left : DXT1 Compression Using New Technique, gives similar results to DXT5nm Compression but with lower texture memory requirements

The technique is compatible with normal maps stored in any compression format, so it can be used to improve quality of existing 3Dc compression. I'm still at my first prototype stage so there is still room for improvement. Will get back to you later explaining how it works.

Wanted to get this in before I finalize the format for the 3d model importer tool.

dislekcia
02-05-2011, 09:49 PM
Will probably get scolded for posting this here...

No, you'll get shat on for posting lame caveats. That's a stupid baiting tactic, stop it.

So how about posting a how-to so other people can use your method?

Nekuro
03-05-2011, 03:55 PM
I've been lurking this thread for some time, and the recent discussions have given me a couple thoughts I would like to share.

1. With my first point, I don't wish to start any arguments, just express an opinion. I think all the tech/engine dev is very interesting. Just because there are engines already out there, and that homebrew engines can't compare to commercial engines for various reasons doesn't mean it's a bad thing to start from scratch. As a dev, I'm pretty sure that Evolution has learned a lot already in the act of coding his own engine (for example, the above mentioned compression method), and too much knowledge and experience is never a bad thing.
Evolution, as dislekcia has proposed, why not take some of the things you have learned/figured out along the way and make a resource available to others (collaboration and sharing of knowlegde always produces exciting results), but that's up to you. As this is the road less travelled (and most people who attempt coding large engines from scratch generally give up), I hope you keep it up and create a final product worthy of all the hard work and time put into it.

2. On the topic of acceleration/deceleration, most people here have discussed it from a Freelancer point of view, and why not, what a fine game indeed, I will therefore use Freelancer as a reference point in my discussion. Anyway, here's my two cents on the topic.
As has already been discussed, Freelancer used the unrealistic model of large amounts of friction in space and capped velocities. In reality, under constant acceleration, a space craft would eventually approach light speed, there isn't much in space to oppose the increase of velocity. Freelancer obviously used this simplification to make the game more playable, but I've been thinking that in a game that doesn't have the unrealistic scaling that Freelancer does, perhaps higher velocities and less friction would be possible and still playable.
Certainly having higher velocities attainable through prolonged (yet expensive) burns of fuel, could introduce some interesting gameplay mechanics, for example relativistic physical affects such as time dialation. Although I'm sure that would be very complicated to achieve, nonetheless I think it would be pretty cool to have different time frames in a game based on velocities, this could introduce time travel type of effects, as time beats slower as velocity approaches the speed of light.

3. On the topic of the wing-commander style slide (which was also seen in Freelancer). I don't think it would be right to have a space flight sim type of thing going on and not allow for this sort of manouver, as it's pretty simple momentum that allows it. If you burned your engines and achieved a specific velocity, then turned your engine off, and turned around, you would still continue in the original direction of motion, using this and a secondary engine burst can lead to intersting changes of direction which can be usefull in a space dog fight (for example turning around while still continuing in the original direction of motion to fire a volley of photon torpedoes at a pursuer seems fun)

4. With the limitations on weaponry/equipment. I'm not too sure how wise limitation by weight is, as it wouldn't matter all that much in space, but I think the classic limitation of this sort of thing in space games would be hull space, and most importantly power constraints. More powerful weapons (or large quantities of them) would draw more power, and leave less power available for thrust and shielding.

I might have more to add at another time, I seem to have run out of time and steam. Good luck, I look forward to the result of this. RPGs and Space, what more could a nerd ask for ;).

Evolution
04-05-2011, 12:20 PM
Got a new idea for a technique but will take longer to create a prototype for it so will put that on hold for now. More details on what it is will be given once a prototype is made (kind of abstract I know). Took me one day to research and prototype the above technique and another to research the whys/pros/cons of it. Will start posting the details on my blog (http://reflex.sagamedev.com/) when I find the time.

Getting stuck on research again :( will need to start focus on game play programming. There is a chance that big changes caused by including techniques can break backwards compatibility of formats so be warned.

My focus on content loading in this engine is speed/quality/low memory foot print, allows for more unique models/objects to be loaded at a time. The current format the ships are loaded in allows for a single ship (mesh & colour/normal/specular maps) to be loaded in a single frame (60th of a seconds) the ship above can be stored in 2.1mb of data and consumes about 5mb of graphics card memory and can be compressed to half that amount with win zip to make it easier to share models. The starfield skybox uses 20mb of video memory and it seems that windows 7 uses just over 100mb of video memory :( which it frees up by disabling windows visual effects, windows does this automatically if there is a need for those megabytes of memory it is hogging.

Evolution
25-05-2011, 09:42 AM
So I've been busy implementing physics into the game, which was a bit tiresome due to my inability to make a selection between a suitable 3rd party middle-ware solution. First I tried Newton, then Havok, then Bullet, then PhysX 2.X and finally settled on PhysX 3.0 . Newton has nice overall but lacked advanced physics simulation features and samples seems a bit outdated, but implementing it in the game was easy. Havok is nicely documented and feature packed, but the licensing seemed tiresome. Bullet was feature packed but needed more documentation and seems a bit slow. PhysX 2.X was more difficult to implement than Newton and took longer to implement and requires the client to install physx system libraries, but the documentation was decent and it had allot of features and it has GPU acceleration. PhysX 3.0 was a complete rewrite over the api so I had to rewrite all the PhysX 2.X code, they focused more on cpu physics in this version and gpu physics is limited to fluids and particles, only runs on Win/Mac/Linux(console and mobile ports expected Q3/Q4 2011 for version 3.1), documentation is still a bit raw due to the api not being a month old yet, the api is driverless so no need to worry about systems requiring additional physics system software, APEX tools needs to be updated to support the new PhysX API, let's not forget it's 100% royalty free for commercial and non commercial software. NVidia has made good decisions with the rewrite which make it more future proof than it's competitors and I'm sure we will see allot more of it in the future when it gets it's polish in PhysX3.1 due the end of the year.

Will post a sample for you guys to help fine tune the controls with the physics.

Evolution
25-05-2011, 03:44 PM
I need people to test out the game and give advice on how to tweak the physics and controls.
galso_v0.01.1.zip (http://www.mediafire.com/?x7ksjdx61z4x4be) (bug fix)

Evolution
25-05-2011, 03:55 PM
There is a slight bug that I found at that causes the program to slow down when you not using a joypad. I've been testing the game with it the whole time and only picked it up with it unplugged, will get that sorted when I upload v0.02

Edit:: Resolved

Evolution
25-05-2011, 04:17 PM
Fixed the bug.
galso_v0.01.1.zip (http://www.mediafire.com/?x7ksjdx61z4x4be)

edg3
25-05-2011, 05:48 PM
The game seems to run at full speed on my PC, but I have no frame of reference. Also, I cannot find the middle of the screen for the mouse easily, the gradual stop of the sideways movement wasnt clear immediately. It is currently very difficult to control. Using a game pad is nice and all, but not everyone has a game pad (or if they do has a way to connect it to their pc) so you might want to adjust the way the mouse is captured for the movement. I also seem to start off moving backwards for some reason. As for the physics, I may have been colliding with open space manouvering around some of the ships, but I might be seeing things, Im unsure.

Evolution
25-05-2011, 08:02 PM
I also seem to start off moving backwards for some reason. As for the physics, I may have been colliding with open space manouvering around some of the ships, but I might be seeing things, Im unsure.

The AI ships are moving forward slighty at random speeds that's why it looks as if you moving backwards. It generates a convex hull for collisions so it's not 100% accurate as mesh collisions but it's faster. Here's a picture demonstrating it.

http://www.newtondynamics.com/wiki/images/2/24/Convex_shape.jpg

Evolution
26-05-2011, 02:24 PM
Sorted out the mouse controls - the mouse is now invisible (exit game with (Esc)) and moving the mouse in any direction will change the direction of your ship and keeping you mouse stationary will produce no change in direction.

edg3
26-05-2011, 08:45 PM
Sorted out the mouse controls - the mouse is now invisible (exit game with (Esc)) and moving the mouse in any direction will change the direction of your ship and keeping you mouse stationary will produce no change in direction.
That sounds much nicer to me :) looking forward to seeing how you do content, and how you allow us to add it.

Evolution
13-06-2011, 03:36 PM
Project is not dead just limping along. Will have a big update planned next month so keep an eye on this thread when that time comes. I'm thinking of this project as a long term investment rather than something to make a quick buck. I've got another project I'm doing to hopefully bring me some funds short term, more in the line of software but also related to game development, which I'm planning to have released the end of the year(got studies to squeeze in between).

Won't leave empty handed here are a list of new features already in the game:

- Spring camera.
- Objects that are blocking the view become transparent.
- Reduced size of model(.gml) files but sacrifices loading speed.
- Removed some library dependencies.
- New format to store skyboxes(.gsx) which improve loading times.
- Added 1st person view and the ability to switch between 3rd and 1st person view.
- Doubled pixel processing performance.


Not much I know, been distracted. Another question is if I should plan ahead and make the game require DX11 since most people will own such a card by the time it's complete :o , also I'm adding in support for xbox 360 controllers.

Evolution
20-06-2011, 05:53 PM
I've been doing some analyzing and thinking of making the entire game scriptable, starting from its main function. The engine code will not be in script but all the game logic will be in C# scripts.

Here's the first script that the game loads.
"scripts/sMain.cs"

using OpenTK;
using Galso;

namespace Game
{
public class Main
{
static public void main()
{
eGameDesc desc = new eGameDesc();
desc.width = 800;
desc.height = 600;
desc.fullscreen = false;
desc.title = "Galso";

using (eGame game = new eGame(desc))
{
game.Run();
}
}
}
}

You will have full access to the game engine from your scripts and you will be able to call other scripts from within a script. You can use visual studios C# 2010 to write scripts with ease.

Do you think this is a good direction?

herman.tulleken
22-06-2011, 07:49 PM
It depends what your goals are. Scriptability is a big boon for any game engine, especially if you move the bulk of game logic from C++ (an archaic, hard-to-program-correctly-and-debug language) to something modern and flexible such as C#. But as others have pointed out... in the bigger issue of engine development... it can easily derail you from making an actual game or two or a dozen.

Even so, if your main goal is to play with technology and have some fun, by all means go for it. (I remember how surprised I was when I learned that Unity started as a one-man-presumably-garage project)... so you never know ;) I think by this time you can probably recite the warnings better than us all :)

Evolution
23-06-2011, 11:45 AM
Might be a good idea for me to split up engine and game development. Learn an existing engine such as Unity and UDK for game development and do engine development on the side. My motivation for scripting integration came from Unity, I also wanted tight and easy communication between my app and the scripts, that's why I chose C#.

malmarius
23-06-2011, 12:35 PM
Why not give each boss 2 or 3 special abilities. your character can then adsorb one of the abilities once he is defeated. will make great re playability value and some tough choices for cool power-ups.