Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411196 Posts in 69314 Topics- by 58380 Members - Latest Member: feakk

March 19, 2024, 12:06:38 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsZSPACE - First person galactic exploration and interior decorating
Pages: [1] 2 3 ... 12
Print
Author Topic: ZSPACE - First person galactic exploration and interior decorating  (Read 27485 times)
nova++
Level 4
****


Real life space alien (not fake)


View Profile
« on: November 02, 2018, 03:05:04 PM »

This thread is now old! Go to the new one!!
Unless you came here from the new thread in which case hi! Check out the old dev stuff!

>>>HERE<<<


Quote
CONGRATULATIONS!

You have chosen, or been chosen, to participate in the GRAND SURVEY. If you're reading this, that means you have arrived in your assigned galaxy, and will soon be ready to get to work!

Your allocated spacecraft is [GALACTIC SURVEY VESSEL #6649 "WATCH AND LISTEN"]. It has been fully refurbished before your mission, and has an estimated service life of [FOUR MILLION] years with adequate care. It will have placed itself into a safe and stable planetary orbit, and will be ready for you to take control as soon as the hypersleep wake-up procedure is complete.

Your assignment is [CG-70455], a [SPIRAL GALAXY] approximately [30,700] light years in diameter. Based on its size and stellar density, your survey quota to qualify for a gold ranking has been automatically set at [NINE HUNDRED MILLION] systems. You are free to complete this quota at your leisure.

Thank you for your participation.

-The Grand Galactic Survey Council

























Description last updated November 2

Hello everyone. It's about time I worked up the nerve to start talking about this.

In ZSpace, you play a galactic surveyor who has been given a ship and been sent to a designated galaxy. Technically, your goal is to listen to the council and meet your survey quota of 900,000,000 systems, but the real goal is to just see what there is to see out there.

And, most of all, to relax - to unwind among the stars.

The only danger in ZSpace is that which you bring upon yourself - avoid ramming into a star at a few hundred kilometers per second, for instance. There is no punishment for dawdling, there are no enemies to fight, and the game doesn't involve conflict.

For all this, I know some people probably would find it boring. And that's okay! I know I can't please everyone, and am okay with occupying a niche.
 
There is more to do than just wander, however. Your spacecraft is equipped with a state-of-the-art-2-million-years-ago replicator, allowing you to manufacture any furniture items that will fit in its bay, to be set up and arranged in your luxuriously spacious interior at your leisure. You can hang photographs you take on your walls, switch the Smart Paint to whatever color and texture you wish, open the window shutters, water your plants, have a seat, and sip some space coffee as you admire the cosmos.

The game is presented at full scale; planets' sizes and the distances between them are accurately represented. Your spacecraft is treated as a physical body governed by Newtonian physics (sorry Einstein) and must perform velocity changes using thrusters, while a hyperdrive lets you traverse vast distances in a short span of time. There are also autopilot functions to help with flying and landing.

While the spacecraft's functionality is mostly technobabble, the universe itself will abide by the laws of physics and current theories of planetary formation. But that's not to say there won't be some more fanciful science fiction locations and elements out there to be discovered.

In truth, much of this game has come about as a way of learning new techniques, of which there have been many. It's still in early stages, obviously! The main goals so far have been getting spaceflight and navigation working, as well as the terrain system and basic interface. Soon enough, work will begin on interior interaction.

I started making this back in June 2018 after taking a break from another game project. A gap of a few months followed before I got back to working on it in mid October. I am honestly not sure where to begin when it comes to talking about the development so far - I'm a lot better at answering questions than I am at just talking about things, so feel free to ask anything.

More than anything, I hope this will turn into something people will enjoy.



Posts with relevant progress

2018

Nov 3 - Navigation screen
Nov 4 - Premature prototyping of biome maps
Nov 6 - Spacecraft model
Nov 7 - Ginormous post expanding on a lot of details of the game
Nov 9 - Object interaction begins
Nov 9 1/2 - Discussing damage and repair
Nov 10 - Totally overdoing the replicator
Nov 19 - Terrain generator shenanigans (and following post)
Dec 19 - Building Haumea


2019
Feb 7 - I'm back, with poop
Mar 4 - Star talk
Mar 12 - Hyperdrive FX
Mar 15 - Gas giants
Mar 22 - Distant textures part 1/?
Mar 30 - Interstellar drive FX
Apr 5 - Interstellar navigation
Apr 6 - Starlight color perception
Apr 17 - Working on the databank
Apr 21 - Sleepily babbling about geometry shaders
Apr 29 - SPACE PUP
May 4 - Replicatin'
May 7 - OCEAN MAN, TAKE-
May 11 - Discussing art styles
Jun 17 - Brief nostalgia trip
Jun 24 - Terrain Engine, Mk. III
Jul 7 - The Dullness
Jul 9 - Galaxy Sectors
Jul 12 - Glitches (on purpose)
Jul 18-July 20 - Pushable objects working
Jul 23 - Binary planets return
Jul 31-Aug 2 - Scatterbrained


Thank you for reading~

Final note: I likely will change the name at some point. "ZSpace" was originally a contraction of "ZenSpace", although I can't help but wonder if people will think it's a zombie game now
« Last Edit: September 27, 2019, 09:52:01 AM by NovaSilisko » Logged

Mit Balkens
TIGBaby
*


View Profile
« Reply #1 on: November 02, 2018, 03:28:33 PM »

Hey Nova! Looks like something that could be very fun to play even if there may be a lot of transit time involved, especially if decorating / engineering of the ships is involved enough. When do you think the first Alpha or test / demo release may be? Would love to try it out even if its bare-bones!

p.s. always loved your KSP mods
Logged
nova++
Level 4
****


Real life space alien (not fake)


View Profile
« Reply #2 on: November 02, 2018, 05:23:47 PM »

Hey Nova! Looks like something that could be very fun to play even if there may be a lot of transit time involved, especially if decorating / engineering of the ships is involved enough. When do you think the first Alpha or test / demo release may be? Would love to try it out even if its bare-bones!

p.s. always loved your KSP mods

I'm glad to hear of the interest. I'm definitely nowhere close to being able to say when I might have a demo out, let alone a full release - sorry.

(And thanks)
Logged

nova++
Level 4
****


Real life space alien (not fake)


View Profile
« Reply #3 on: November 03, 2018, 01:59:24 PM »

Decided to take a break from smacking my head against processing triaxial ellipsoids today, and started work on improving the navigation UI. I'll have to put together a video on it sometime, but soon I'll edit some screenshots into this post shortly once I get this bit worked out.



Edit: Finally fixed what was broken. Here are the orbit lines as they exist right now:







I'm still debating on whether to actually give the orbit lines a color. I think I like it being monochrome, with more important things having color. Right now, the player icon is yellow, the hyperdrive line is either green for a valid path or red for an invalid path (with a dashed line for colorblindness accommodation).

Perhaps I should just make them all customizable. I mean, you'll be able to change the freaking floor texture in the lounge, so why not?





Edit2:

Hmm. I've forgotten about the "commit" button being only a color change. I'll make it change to grey stripes later to add another way of communicating that it can't be pressed.

Edit3:

Now I added the stripes - looks fancy now. Here's a gif of the navigation screen in action:



It reports the altitude at first as 300 km over Oblatio, which is technically incorrect - the altitude readout is still assuming planets are spherical.
« Last Edit: November 03, 2018, 05:09:45 PM by NovaSilisko » Logged

Deckhead
Level 1
*



View Profile WWW
« Reply #4 on: November 03, 2018, 07:57:59 PM »

How are you handling the scale of everything?
Logged

Devilkay
Level 2
**

Hi! First game-dev experience!


View Profile
« Reply #5 on: November 04, 2018, 01:51:40 AM »

now the 3d arts are very poor. i hope to see more with the next updates!
Logged
nova++
Level 4
****


Real life space alien (not fake)


View Profile
« Reply #6 on: November 04, 2018, 10:12:47 AM »

How are you handling the scale of everything?

It's a bit layered. The planets are all kept in a sort of imaginary real-scale space, with their positions and velocities (and orbital parameters etc) kept track of with double-precision (64 bit) floating point. The same applies for the player - there is a "particle" that exists within that same space which has gravitation applied to it.

When in interplanetary space, the ship is basically nailed to the "real" 0, 0, 0 coordinates, unable to move but free to rotate. A scaled representation of the solar system is rendered on another layer, matched to the player's position in the real-scale space.

When approaching a planet, things shift around. The planet becomes the new reference frame, and the ship is allowed to move and act like a physics object while the particle deactivated until you leave the planet. To keep the ship within reasonable bounds, a floating-origin system is used - whenever the ship gets too far away from the 0,0,0 position, it's invisibly bumped back, along with things like the terrain.

I hope that explained something. I'm no good at translating from code to speech.



Meanwhile, I have been getting sidetracked in a distantly relevant way. For a while I have chewed over the idea of using cellular automata to generate climate/biome maps for celestial bodies, and I finally decided to start prototyping some stuff.



I also fed it a map of mars for the hell of it.



Presently this is done in a simple loop on the CPU, but I believe this basic technique can be done on the GPU as well for an enormous boost in speed. We'll see.

I should probably make some more important things first...

Edit: Same map but now I've got latitude variation of precipitation and variable wind direction - things which are going to need more granularity in the future cause not all planets are moderately fast rotators with low inclination like earth

It's also purple, because spaaaaaace

« Last Edit: November 04, 2018, 07:13:00 PM by NovaSilisko » Logged

Schrompf
Level 9
****

C++ professional, game dev sparetime


View Profile WWW
« Reply #7 on: November 04, 2018, 11:49:48 PM »

Interested to see where this is going. It *might* be an interesting game if you actually get around quickly enough to discover stuff. But you repeated "realistic physics" once too often for my taste - realistic interplanetary travel takes months of realtime and is therefore incredibly boring. I sure won't redecorate my ship for months while observing the same planet outside the window at an ever so slightly growing scale.

And for the love of the physics god: throw out the ellipsoids. It looks awkward at best. Any body of astronomic scale will crumble to a sphere under its own gravity. Your bodies would need to be less than 1000km across to support this shape for a prolonged time. And don't start with "earth is no sphere, too!" - the difference is less than one percent.
Logged

Snake World, multiplayer worm eats stuff and grows DevLog
Zireael
Level 4
****


View Profile
« Reply #8 on: November 05, 2018, 12:23:30 AM »

This looks really interesting, and the biome maps are great!
Logged
nova++
Level 4
****


Real life space alien (not fake)


View Profile
« Reply #9 on: November 05, 2018, 01:03:36 AM »

Interested to see where this is going. It *might* be an interesting game if you actually get around quickly enough to discover stuff. But you repeated "realistic physics" once too often for my taste - realistic interplanetary travel takes months of realtime and is therefore incredibly boring. I sure won't redecorate my ship for months while observing the same planet outside the window at an ever so slightly growing scale.

And for the love of the physics god: throw out the ellipsoids. It looks awkward at best. Any body of astronomic scale will crumble to a sphere under its own gravity. Your bodies would need to be less than 1000km across to support this shape for a prolonged time. And don't start with "earth is no sphere, too!" - the difference is less than one percent.

Oh no no, don't worry, the physics apply to the solar system, but the ship has a hyperdrive as I've mentioned, and shown in the navigation gif. You'll be able to get from star to star and planet to planet in a matter of seconds.

And, I include the ellipsoids because the universe decided to throw them at us, too - as an example, we have a large body of that very shape in our own solar system, called Haumea:



There's also another with a similar shape, though much smaller, called Varuna.

It's all to do with centrifugal(centripetal? I still get the two mixed up) force - Haumea rotates in only 4 hours, and has been stretched out to 2300 km across on its longest axis, while its shortest axis is only 1100. This turns out to be one of multiple stable shapes (more specifically, a Jacobi Ellipsoid) for a rotating body in equilibrium, along with a simple oblate spheroid (like the Earth, or Jupiter)

If that's not weird enough, there are other hypothesized stable shapes - http://www.josleys.com/htmlgalleries/globe/Piriforme3_s.mov
« Last Edit: November 05, 2018, 02:11:51 AM by NovaSilisko » Logged

Zireael
Level 4
****


View Profile
« Reply #10 on: November 05, 2018, 01:58:58 AM »

I thought of Haumea too when I read the critique of oblong shapes, but you beat me to it!
Logged
Schrompf
Level 9
****

C++ professional, game dev sparetime


View Profile WWW
« Reply #11 on: November 05, 2018, 03:05:33 AM »

Wow, ok, didn't know that. Thanks!
Logged

Snake World, multiplayer worm eats stuff and grows DevLog
nova++
Level 4
****


Real life space alien (not fake)


View Profile
« Reply #12 on: November 05, 2018, 03:10:08 AM »

Wow, ok, didn't know that. Thanks!

Honestly, this little thing right here is part of why I want to make this game - I want to help people learn about all the stuff that's out there, or could be out there, and have little moments of "holy crap, that's a thing that can happen?" of their own.  Smiley
Logged

nova++
Level 4
****


Real life space alien (not fake)


View Profile
« Reply #13 on: November 06, 2018, 01:10:30 PM »

You know what, I completely forgot to post pictures of the spacecraft model. It still need to be unwrapped and textured, but I'm very happy with it so far. It was a collaboration between me and a friend of mine.







Due to the game being in a first person perspective, you'll probably only get to see the inside of the ship for a while. But nonetheless I hope to have some form of out-of-ship activities - such as a deployable rover or something similar, which would let you explore the exterior all you wish. You can also see a fair bit of it from the inside, and from external cameras.
Logged

Schrompf
Level 9
****

C++ professional, game dev sparetime


View Profile WWW
« Reply #14 on: November 06, 2018, 11:16:08 PM »

Panorama cockpit. Important part for any explorer. Nice! Needs moar windows?
Logged

Snake World, multiplayer worm eats stuff and grows DevLog
nova++
Level 4
****


Real life space alien (not fake)


View Profile
« Reply #15 on: November 07, 2018, 03:58:32 PM »

Okay. Time to babble about design philosophy. This'll be a long one. Sorry, no tl;dr today. Grab a drink.





Part 1: Space & How To Find It



In my first post on this, I honestly glossed over almost everything about planets except that they'd follow current theories of planetary formation. Technically, I intend that to be true, but there's some footnotes attached to that statement.

A short way to sum up the way I feel about planetary generation for this game is that I would rather have a less realistic but highly varied galaxy to explore than a very realistic and predictable one. How I actually intend to do that on the technical side is a whole other ball of worms, but another good way to put the actual design philosophy would be: "Based On A True Story"

What I mean by that is I can take a scientific, realistic baseline for what things we know exist out there in space, and extrapolate to things that could exist, even if they are unlikely. Further, some things that probably aren't out there (but are allowed by the laws of physics) are fair game as well. And then, on top of that, there can be purely fictional elements - though not so many that they become mundane. There should be a sense of surprise.

And on that note, I feel that a key facet to making an interesting galaxy to explore in is to not give the player too much too fast. There need to be some limitations and rules as for how the player discovers things, but not so much so that it becomes a painful chore that would rather be skipped. It should take some amount of effort, yet feel natural.

The current method I have my eye on is as follows: Upon arriving in a system, the player will have very little knowledge about what is in it. Your spacecraft is equipped with a "mass scanner" (pretend it detects higgs bosons or something) - a device that can register the presence and trajectories of large objects in a vicinity around it. It has a sensitivity limit, so the further away you are from the object in question, the less a given object will stand out from the background noise.

You can focus on these detected objects in your map screen, just like a normal one, but with no information, the only thing the map will display is that they exist. Based on the mass, though, it will give you an estimate of its likely radius and composition. Something with the mass of Jupiter is probably going to be a gas giant. Something with the mass of Pluto will probably be a small planetoid.

But perhaps it won't be.

So, you can target your hyperdrive and head off. Upon arrival, in addition to simply being able to see it out the window, the map screen will automatically update with more information. Its radius will be filled in, as will its composition (one can assume the computer is making its own observations and processing this data itself).

Another way is perhaps via a small telescope on the spacecraft, giving you a fuzzy look at distant bodies, hinting at what you might find there. Not exactly Hubble - more something like a backyard telescope, giving a view like this. That would give your databank information like radius and composition, and perhaps let you spot moons that the mass scanner can't detect over the signal of the parent planet at that distance.

Whatever the case, I want dearly to capture what I mentioned earlier - the feeling of being surprised at what's out there.





Part 2: Spacecraft & How To Decorate Them



I've touched on this one slightly more, but not nearly in this much detail. Maybe you should get that drink, after all?

Your spacecraft, Galactic Survey Vessel #6649 "Watch And Listen", is your dearest friend in a lonely galaxy. It gives you the life support you need to breathe, the artificial gravity and inertial damping you need to not barf or get flattened, and the gift of hyperspace travel to help you see the cosmos. There are a number of ways to interact with your spacecraft, and the most obvious of them is flying it.

In normal flight, your spacecraft is governed by physics, and behaves as a rigidbody object. You control it with powerful thrusters to adjust your trajectory when you aren't flying around in hyperspace. Under full manual control, Kerbal Space Program players will find themselves right at home here, but I will confess that many people might take a bit to get used to it.

However, there also are several autopilot modes to make flying easier. For instance, one will bring your current velocity (relative to the nearest celestial body) to zero. Another will set the thrusters so that the spacecraft will try to hover at a certain altitude. Another will automatically land the spacecraft for you, although it will try to do so wherever you tell it to, so make sure you aren't over a mountain.

As for hyperspace travel, there is a fair bit less to do on your end. You choose the target on your map, lock it in, and hit go. It's smart enough to not let you fly into a star, but it still requires some astronavigation on your part. Performing a hyperspace jump does not cancel out your velocity - if the planet you left was moving 20 km/sec relative to the one that you arrive at, your ship's thrusters will have to make up that difference (hence the match-velocity autopilot!)

The hyperdrive also functions in two modes - interplanetary and interstellar. The only real distinction between them is that interstellar is, as might be expected, much faster. In interplanetary mode, you can cross 1 astronomical unit (the distance from the Earth to the Sun) in about four seconds. At these speeds, a trip from Earth to Neptune would take about two minutes. In interstellar mode, that same four seconds will take you almost eighteen light years. Earth to Alpha Centauri would take about one second. But crossing the 37,000 light-year diameter galaxy would take over two hours.

These speeds are, of course, subject to change. But the basic principle is still something I want to hang onto - hopping from star to star is quick, but going from one end of the galaxy to the other means you'll have to find something else to do in the meantime.

Which brings us conveniently to the other way you can interact with your spacecraft.



Leaving the cockpit, you'll find what I like to call the "lounge". It's a luxuriously spacious area for an exploration vessel, and that space will be able to be populated however you wish. Furniture can be ordered from the replicator and set up how you like, as can assorted props and decorations, photos you've taken (with an equippable camera, because I remain insane) can be printed and hung on the wall, and so on. The color and texture of the walls and floor can be changed by means of configurable intelli-auto-surfaces (or something), so if you really want the inside of your spacecraft to look like a dungeon, I mean... I guess I can't stop you.

From a design and feel standpoint, a certain theme has been emerging. Though old, Watch And Listen is well-maintained by automated systems, and looks the same today as it did when it rolled off the assembly line a few million years ago. The design language for it that's been emerging is one of contrasting round and sharp shapes and large, clean surfaces - partly for style, partly to leave big spaces for the player to fill. The aesthetic of the original series of Star Trek is a big influence on the interior.

At the same time, it's not nearly as docile as the spacecraft of Star Trek. It's a very chunky vehicle, built heavy and tough. It bleeps, it clunks, it creaks, it shakes when the engines run, and if it's doing something that violates our laws of physics, it will feel like you're breaking the rules. The hyperdrive is a rough, shuddering ride, the inertial dampeners aren't perfect, and the replicator sounds like a directed energy weapon.



There are a lot of other topics I want to touch on, but most of them remain in fairly speculative territory at this point - such as the potential for spacecraft damage and repair, some sort of resource gathering, etc, etc, so I am saving them for another time.



Phew. That was a mouthful. That took me all day to put together. I'll probably be editing it for another two days on and off but for now, I should probably stop myself. I've been doing sound design stuff recently, and soon should have a video together showing them off.
« Last Edit: November 07, 2018, 10:48:00 PM by NovaSilisko » Logged

Schrompf
Level 9
****

C++ professional, game dev sparetime


View Profile WWW
« Reply #16 on: November 07, 2018, 11:13:18 PM »

A short way to sum up the way I feel about planetary generation for this game is that I would rather have a less realistic but highly varied galaxy to explore than a very realistic and predictable one.

 Hand Thumbs Up Right Hand Thumbs Up Left
Logged

Snake World, multiplayer worm eats stuff and grows DevLog
Zireael
Level 4
****


View Profile
« Reply #17 on: November 07, 2018, 11:41:11 PM »

I agree with Schrompf, and: can you leave the cockpit if you're on manual steering (the Kerbal mode)?
Logged
nova++
Level 4
****


Real life space alien (not fake)


View Profile
« Reply #18 on: November 08, 2018, 01:23:44 AM »

I agree with Schrompf, and: can you leave the cockpit if you're on manual steering (the Kerbal mode)?

Oh yes, you can leave the cockpit at any time, whether you're in hyperdrive cruise, waiting for an autopilot function to finish, or 10 seconds from smashing into a moon
Logged

Zireael
Level 4
****


View Profile
« Reply #19 on: November 08, 2018, 03:41:27 AM »

I agree with Schrompf, and: can you leave the cockpit if you're on manual steering (the Kerbal mode)?

Oh yes, you can leave the cockpit at any time, whether you're in hyperdrive cruise, waiting for an autopilot function to finish, or 10 seconds from smashing into a moon

Haha, okay then, but manual steering plus trying to leave the cockpit should pop up a warning of some kind then!
Logged
Pages: [1] 2 3 ... 12
Print
Jump to:  

Theme orange-lt created by panic