Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🦔🧪 -> Revamping RPG style, adding api calls and light pcg tie-in with planets-build [SCD-3, SCD-2] #6

Open
wants to merge 14 commits into
base: voxel-map
Choose a base branch
from

Conversation

Gizmotronn
Copy link
Member

@Signal-K/unified-crew

Notes in jira (linked in docs.skinetics.tech) or notion

A bit of a conversation snippet:
I've started cleaning out the repo to make way for some simple tilemap scenes (see the 'simple' branch in signal-k/starsailors) and api calls, I'll add the voxel-tilemap scenes in when I finish them as well. But since that's 3d, that won't concern you for now.

I guess there's only one other thing that's of importance and that's getting our planets ready for the initial NFT drop. The other 3d things I need you to sort out are helping with the atmosphere/sky box for the procedural planets (which are basically spheres that look like planets). We've copied from Sebastian Lague's pcg course (https://github.com/seblague/procedural-planets) and I'm also wanting to combine it with the other solar system repo he has on his github profile.

What I've added to it is some custom api wrappers so that the planets generate based on data from a source like the Kepler Space Telescope but have the same behaviour as Seb's generator.

Can you look into how his generator (the solar-system and procedural-planets repo) works, make some notes and then try combining it with some custom shaders from the asset store so we get a slightly more unique look (I'll work on adding some custom materials as well).

There's a similar example here: https://www.youtube.com/watch?v=hHRhDEVwDho&list=PL43PN07AM4J_7ZkZAUotpfijJSoibrvbr&index=2. It's for godot but the logic is mostly the same.

Here's an extended repo of the planets project: https://github.com/williamdewaynecorrin/PlanetGen/tree/master (he also has some youtube videos explaining his additions) in Unity.

Finally, here's an asset we're going to get for the 3d worlds: https://www.youtube.com/watch?v=f8O-AmYkLRQ
Basically people can get a planet in-game, and it will act as an NFT as well (sort of like a trading card, with one side showing the original planet and the other side showing the 3d scene/base they've constructed, curved using this plugin and merged with the original generated asset.

I'd recommend looking at these NFTs for some inspiration on how we are going to display the user's planets:
https://opensea.io/assets/matic/0xe91a7256d51295d3964f011a849b2d6d91cfa816/2532
https://opensea.io/assets/ethereum/0xe6ddbea6749cc793ba12ac22bca03c3f1fcf3a80/744
https://opensea.io/G1zmotronn?tab=favorites
https://opensea.io/assets/ethereum/0x76be3b62873462d2142405439777e971754e8e77/10307
Maybe you could also look at creating some banners for the NFTs that I can then insert the planet images onto?

Nathan Dawit Abebe
Sure thing. So the character waking up in the icy planet with certain structures, buildings and a broken ship?
Yeah that's the one
But keep in mind that the starting planet class (ice/river/lush/fire) will depend on the user's character creation choices and luck/chance

@Gizmotronn Gizmotronn added documentation Improvements or additions to documentation enhancement New feature or request procedural pcg stuff labels Jul 24, 2022
@Gizmotronn Gizmotronn self-assigned this Jul 24, 2022
…ler sample scene for [SCD-1]

Character controller:
This is a 3d controller that currently has a method/class for taking in mouse input (x-axis and y-axis) and the player keyboard input for transform.position movement (mouse handles transform.rotate)

Graph:
Currently need to add a new package/utils library but other than that the logic for the graph is working and will be tapped into Signal-K/marketplace#7 and Signal-K/starsailors-boilerplate#2, taking in classification data and outputting it to a 3d object (nft -> #1) as well as other game-objects. Smart contract is being handled in marketplace repo for now (check submodule and referenced issues there)
Jumping, x- & y-axis movement added. Currently using 3d object terrain as ground -> will change this to use older scene surfaces from signal-k/starsailors-boilerplate later. All of this can be customised via the layers option in the hierachy inspector

New updates coming through to the SCD board via Nathan in conjunction with previous commits in this branch
…CD-4 SCD-1]

Notes:
The terrain tool is absolutely amazing! I love it
All of the terrain can be updated, we can move things out of the terrain "paintbox" and into individual gameobjects (as prefabs) if we want them to be interactable in-game, etc. Right now just using some very simple assets but we can customise, maybe create custom materials from other assets

When we get this finished and combined with the spherical scene/terrain generator and screenshot functionality, it will be amazing.
…for [SCD-6]

Before, when the raycast (pointed in the direction of the crosshair -> center of game display) was send out and hit an object with the InteractableObject script attached, the text describing the object wouldn't disappear from the UI if the raycast then didn't hit anything, so we fixed this bug

Animation bool/param also logged in AI_Movement.cs
…D-3]

Scene: `Assets/Scenes/FirstPerson 3D Controller/Inventory Db`

List of scripts: `FirstPerson 3D Controller/Scripts/Item Scripts`

Like how the prefabs for inventory items are stored in [Pickup items](https://www.notion.so/Pickup-items-da58464a64924faf8117bea06582e37d), the different items, we’re storing the different item types onside `FirstPerson 3D Controller/Inventory Objects`

Note: some scripts are named `iInventory...` to differentiate their class with the main inventory in [Interactable Objects](https://www.notion.so/Interactable-Objects-851b3d1289984b769dd01f0a17c244af) / [Pickup items](https://www.notion.so/Pickup-items-da58464a64924faf8117bea06582e37d)
We've added the slots and the backend for it, it's working fine, but I think it would just be better to build this onto a scene like the procedural planet stuff in Signal-K/starsailors-boilerplate#2 for now and integrate it with the main character controller scene here down the line, as at the moment we've got two scenes/mini-projects here, with "Inventory..." being used in Variable names and it's getting quite confusing for myself and for Unity. So we'll take a break from this for now
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
documentation Improvements or additions to documentation enhancement New feature or request procedural pcg stuff
Projects
Status: No status
Status: No status
Status: No status
Status: No status
Development

Successfully merging this pull request may close these issues.

None yet

1 participant