Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411281 Posts in 69324 Topics- by 58380 Members - Latest Member: bob1029

March 28, 2024, 08:49:15 PM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsAlong Came Humans! - Sci-fi colonization game
Pages: 1 [2] 3 4
Print
Author Topic: Along Came Humans! - Sci-fi colonization game  (Read 15554 times)
Prodigga
Level 0
***


Programmer


View Profile
« Reply #20 on: September 06, 2016, 05:11:43 AM »

Hey y'all.

So I got the tile mapping working correctly! Hoorah! As usual, most of the code is hacked in to place, this was purely to give me an idea of what the code will need to look like, the kinds of problems I will face, etc.

In this demo, I am using my biodome tileset. I set the "dome elevation level" value on the individual hexagon tiles, and the system picks the correct triangle tileset graphics for every tile in the hexagon, taking in to consideration the contents of the connected hexagons. It also handles warping of the geometry to make my triangle tiles fit the curved surface of the sphere.

None of these graphics are final, they are just to give me an idea of how it might work!

Now that I have nailed down a tile system for planets, I can resume work on the simulation side of things. I can just represent planets as an array of tiles in the simulation, which means I will still be able to simulate planets independent of graphics.




« Last Edit: September 07, 2016, 06:50:58 AM by Prodigga » Logged

thekosmonaut
Level 0
***


View Profile
« Reply #21 on: September 07, 2016, 04:21:33 AM »

this looks great already
Logged

Prodigga
Level 0
***


Programmer


View Profile
« Reply #22 on: September 07, 2016, 06:47:10 AM »

Thanks man. Today I worked on refactoring the entire pipeline for generating and rendering tile sets on a planets surface.



Since there can only be 3 or 4 different size planets (because maths), I wrote some code to precompute all the information about a planet and store it in a file.



Next I put together a pipeline that handles automatic generation of a "tileset" file based on a blender asset.





Making changes is really easy.

So, I make my edits in blender with a real-time preview of the tileset and hit save



Then:




Happy with the results Grin
Logged

Christian
Level 10
*****



View Profile WWW
« Reply #23 on: September 07, 2016, 07:41:28 AM »

This looks great, love the aesthetic and the stylistic over-sized structures on planets

Will there be combat/wars, and will there be stuff to deal with black holes, meteors, planetary disasters, etc.
Logged

Visit Indie Game Enthusiast or follow me @IG_Enthusiast to learn about the best new and upcoming indie games!
Davi Vasc
Level 1
*



View Profile WWW
« Reply #24 on: September 07, 2016, 10:43:41 AM »

The cartoony planets look awesome! Following to see more.
Logged

Davi Vasc - Video Game Composer
Website: www.vascmusic.com     
Twitter: https://twitter.com/VascMusic
Prodigga
Level 0
***


Programmer


View Profile
« Reply #25 on: September 08, 2016, 02:21:06 AM »

Combat is still up in the air. I was thinking maybe pirate factions start spawning once your colony gets large enough, and you need to deploy security forces to combat them or have security patrol tradelinks to prevent pirates from pillaging your trade ships. Just some ideas, I havnt settled on anything yet!

Tomorrow I will be working on resources and production. Coming up with some ideas for resources and production chains right now so I have some data to play with while I figure out how I am going to get everything in to the game.
Logged

I_smell
Level 5
*****



View Profile
« Reply #26 on: September 08, 2016, 08:03:40 AM »

The generated planets look very cool, excited to see more of the game running!


aaaa screw combat, leave bigger companies to squeeze combat into everything.
Pirates stealing your stuff sounds like a good addition though, in how it affects your resources.
Logged
samloeschen
Level 0
**



View Profile WWW
« Reply #27 on: September 08, 2016, 08:09:30 AM »

Posting for updates! This looks really cool man, best of luck with continued development. I'm a huge Sins of a Solar Empire fan, and this looks very up my alley.

Also, super into the hex-based terrain system, treating each planet as a container for an array of tiles is a smart way to simulate everything. Do you plan on keeping the hex based look or will you be smoothing/interpolating the terrain to get a more natural look? (Personally, I like the hexes)
Logged

Programmer/Artist for Remote Games.
Currently working on Silent Earth.
TIG Devlog | Twitter | Itch.io
Prodigga
Level 0
***


Programmer


View Profile
« Reply #28 on: September 10, 2016, 03:50:35 AM »

Quote
Do you plan on keeping the hex based look

I plan to put together a terrain tileset that is a little more organic, but it'll still mostly look like it's mode up of hex (or slightly circular) tiles. I agree, I think the hex look is sorta nice. Really fits the theme of the game, which overall is going to be relatively cartoony and non serious!


In other news, unfortunately nothing too exciting is happening yet. I have been thinking a lot about production chains, resources, etc, and looking at my favorite games to see how they handle and structure things. But every time I come up with a system, I come up with an idea that the system can't handle. So, to try and make some progress, i settled on some ideas and started implementing a proper system for defining resources, the rules for manufacturing those resources and how those resources are manufactured.

Ive come up with Products, Factories and Recipes.

(Product icons courtesy of FlatIcon.com in the following pics! Keeping me sane while working on this stuff. Less text I have to look at the better..)








For those who care about technical details: these are just scriptable assets! I briefly thought about modding too, and it will be trivial to load a json or xml file that defines the properties of these scriptable assets, and add the generated scriptable assets to the relevant libraries before the game Boots. This way players could relatively easily add in their own products, factories, recipes, etc. Or perhaps even as asset bundles that contain instances of these scriptable assets, so the users can add in their own meshes and textures/icons. This is a long way off, obviously, but it is something I am keeping it mind!

I've made a 'hard' seperation between simulation code and these product/factory/recipe assets. Unfortunately you cannot easily/cleanly serialize references to unity assets when saving your game state to disk. So, if the user places down a building on their planet, that building will need some way of knowing which Factory asset is assigned to it in a way that is cheap and easy to serialize and store in a save file. One quick and dirty way to do this is to store the name of the asset as a string, then have some sort of library object that knows which name maps to which asset. This is usually how it's done, I think, and it is how we've handled similar issues on games that I have worked on in the past. However one downside is that strings generate a lot of garbage in c# which sucks for performance. Also, strings tend to take up a lot of space which would bloat save files a fair bit. The only actual benefit of strings is that they are human readable - the computer doesn't care how an asset is identified.

With all this in mind I've come up with a system where every asset that needs to be referenced in the simulation is given a unique integer ID. These IDs are managed by the relevant libraries. The libraries ensure that every product has a unique ID when it is being added to the library, and the assets ID is stored in the asset to preserve the ID and ensure the library doesn't assign it to future assets. When something in the simulation needs to access the asset it is referencing, it passes the integer reference to the correct library, the library does a quick dictionary look up and returns the correct asset. So, instead of accessing a property on an asset directly, I do something like ProductDefinitionLibrary.Instance.Get(productRef). Small 'price to pay' for all the benefits.

Anyway, lastly, here is a gif showing it in action. As with every major refactoring, it doesn't look much different to previous gifs, but you can see the factories in action. This is a planet with a Vegetable Farm, Cow Cloning Facility and Meal Factory. The vegetable farm produces vegetables. The Cow Cloning Facility takes 2 vegetables and produces 1 meat, and Meal Factory takesn1 meat and 1 vegetable to produce a balanced meal. The freighter is just grabbing (up to) 10 balanced meals and shipping them off elsewhere. Not too exciting, but whatever, point is it works Cheesy



« Last Edit: September 10, 2016, 04:36:42 AM by Prodigga » Logged

Excy
Level 2
**



View Profile
« Reply #29 on: September 10, 2016, 04:28:34 AM »

Looks really awesome, I love the choice of name too.
Logged

Prodigga
Level 0
***


Programmer


View Profile
« Reply #30 on: September 12, 2016, 03:00:57 AM »

Thanks man!

So today I started working on the 3d visualisation code - wanted to work on something visual after that stretch of programming.

Put together a "farm land" tileset for the farms the player can build. Also started mucking around with lighting and trying to get that to look sorta nice. I will be faking most of the lighting for full artistic control. I've also been tweaking the camera system to find a nice balance between being able to see everything in the solar system, but not being zoomed out so far that you can't see any details on the planet surface. My farmland tileset is helping alot with this, giving me a reference point for how large the buildings would be on the surface of a planet.

At the end of the day, I put this together to show you all how it is coming along.

Basic planet Halo, planet lighting (light/dark sides of planet), and my farm land tileset. A farming colony!


Logged

badrobit
Level 0
**



View Profile
« Reply #31 on: September 13, 2016, 09:40:49 AM »

This looks amazing, cannot wait for you to have a website and more details and maybe even a playable demo. If you would like help in testing your system please let me know!  Smiley
Logged
DemonSkullGames
Level 0
**



View Profile
« Reply #32 on: September 13, 2016, 10:15:57 AM »

Looks great, seeing the planets remembers me the spore.
Logged

Pandawan
Level 0
*

Random french dev living in California.


View Profile WWW
« Reply #33 on: September 13, 2016, 09:07:09 PM »

(Just made an account to reply to this!)
This is such a good idea! Love the style and graphics btw!

Also, will the enemies/other AIs be able to fight your starting planet? If so, is there a way to change starting planet, like make your citizens flee to another one?
Logged

Things, stuff... ye
Prodigga
Level 0
***


Programmer


View Profile
« Reply #34 on: September 14, 2016, 05:05:53 PM »

Wow, thanks ya'll Smiley

I wish I had some exciting stuff to announce/show, but I've mostly been working on backend stuff! I replaced the camera code to support multiple camera modes. Added a new 'orbit' camera which is what you will be using when interacting with planets. Looks a little like this:


Also, started working on some basic gameplay 'tools'. This is the factory placement tool, it supports placement validation, previewing of the factory you are about to place (white ghost), and it tells the appropriate systems that a factory has been placed on the planet. The factory's tileset is applied to the target tile, the factory's mesh is spawned on to the tile, and the factory is added to the planet on the simulation side too so that it starts producing products.
Logged

Pandawan
Level 0
*

Random french dev living in California.


View Profile WWW
« Reply #35 on: September 14, 2016, 05:35:59 PM »

Wait so you are going to be able to produce resources right? Is it possible for a planet to be out of resources? Like some sort of carrying capacity

Also, love the camera mode, especially the fact you can see other planets and stars around.

Lastly, you said you wanted to make the world gigantic to infinite, how easy/hard will it be to travel between solar systems / galaxies?
Logged

Things, stuff... ye
Prodigga
Level 0
***


Programmer


View Profile
« Reply #36 on: September 14, 2016, 09:12:15 PM »

Hey Pandawan!

Quote
Wait so you are going to be able to produce resources right? Is it possible for a planet to be out of resources? Like some sort of carrying capacity

Yeah, I do plan to make it so that a planet will only have so much of a type of resource, so you could mine a planet dry. However, it might be better to limit the number of tiles with a resource, rather than limit the amount of resources. This way the planet will never run dry, but you'll only be able to mine a certain amount from it.

Quote
Lastly, you said you wanted to make the world gigantic to infinite, how easy/hard will it be to travel between solar systems / galaxies?

I have been thinking about this myself, as well. I don't want it to be too much of a hassle to jump from one solar system to another, because you will probably be doing that constantly. I'm still thinking about this. Most likely option will be to have some sort of a galactic map that you can browse at any time, and click on any planet to jump in to it. I can stylise the rendering of the galactic map and have it display real time information that it fetches from the simulation. For example, it could show you all of your ships as dots moving around the galaxy in real time, that could look really cool.

Quote
make the world gigantic to infinite
I don't want to pull a no mans sky here, so I am just going to point out that there will probably be some sort of cap to the amount of solar systems in the galaxy. Cheesy I can't say yet what the cap will be, too early to think about that!
Logged

Darckonte
Level 0
*



View Profile WWW
« Reply #37 on: September 15, 2016, 12:35:11 AM »

this looks fantastic! Smiley keep up the good work!
Logged

Working on Reptilians World War A PC shoot em up game with pixel art.
motorherp
Level 3
***



View Profile
« Reply #38 on: September 15, 2016, 12:54:19 AM »

This looks really good, I'm loving the concept.  Do you mind if I ask you a technical question?  When you split a sphere up into hexagons you also end up with a few pentagons in places.  Is that an issue you're dealing with or have you found a way around it?
Logged
Prodigga
Level 0
***


Programmer


View Profile
« Reply #39 on: September 15, 2016, 05:15:33 AM »

Thanks you two Smiley @motorherp I treat the pentagons the same as hexes. Since the tileset is made of triangle wedges, I apply to same morphing algorithm as I do for hexagons, and it works out. Its a little cramped and causes some clipping but it's not terrible.

Today I put together 3 tileset. The Cow Cloning Facility, Meal Factory and a new biodome tileset. I also mocked up a barren moon planet with some structures on it. The structures are covered by the biodome because there is no atmosphere on this planet. This is just a mock-up for now. The game doesn't actually support moons and such yet. That will all come in to play once I start working on a climate/terraforming system. So yeah, mostly just visual stuff today. I wanted to flesh out some tileset to get an idea of how it looks when they all interact and to see if there is any issues with the current system. So now I have 3 factories and 2 production chains.

Vegetables (Farm) ⇒ Meat (Cow Cloning Facility)
Vegetables (Farm) + Meat (Cow Cloning Facility) ⇒ Balanced Meal

Next I will be working on cities. Cities will grow using the food (balanced meals), I can add further complexity once the basics are in. That's work for tomorrow. Ive also been thinking about/considering adding roads and requiring the player to connect everything back to the colony center with roads. Will playbaroujd with that idea later. Here are some screenshots for you all to enjoy. Smiley

This is not the logo for ACH, but it's the best I have for now.







Also! I have edited the first post and appended some information about the game, thoughts?:
Quote
Along Came Humans
A real time galactic economy simulation game.

A sleeper ships unexpected drops out of warp. Location unkown, but the objective is clear. Colonize planets, nurture your colonies into sprawling cities! Rebuild civilization and leave no rock unsettled!

The humans have arrived!
« Last Edit: September 15, 2016, 05:45:19 PM by Prodigga » Logged

Pages: 1 [2] 3 4
Print
Jump to:  

Theme orange-lt created by panic