Skip to content

πŸ¦ˆπŸ”— ↝ Generate asset, ID & stats/elements for anomalies when being claimedΒ #32

Description

@Gizmotronn

See STA-31 STA-32 STA-33 STA-34

Use matplotlib to generate an image (will be a 3d asset in MVP/prod) when an anomaly is being created. Cross-reference it with the metadata mentioned at #29, i.e. adding new metadata like its radius. This metadata is then used in the Generator component (3JS/Unity as well as in Matplot).

Update the fields to include things like the "seed" in https://steveasleep.com/stellardream/. This should match the seed in the 3JS planet editor:

const seed = usePlanetEditorFieldState('seed', randomSeed(), value => {
planet.seed = value;
planet.regenerateTerrain();
planet.regenerateShading();
return planet.seed;
});

Star system should be the same as the TIC Id (which will cause conflicts between the correct/real fields like radius from lightkurve and the fields created by stellardream β†’ however, this is useful for fictional planets, plus comparing the two identical seeds/ids in-game. Helps to train models/users to identify differences between candidates.

So: Create a planet by entering some fields in a new createPlanet form.

First, a random TIC ID will be sent to the server which will return 1 image (graph) and the estimated radius. This radius is then sent to the Generator:

"Send a request to the python Generator" β†’

import numpy as np
import matplotlib.pyplot as plt

from tqdm import tqdm
from noise import double_perlin3D, background

from geometry import normal, cos_vec, reflection
from colour import colorize

res = 2048
radius = 0.4 ...

Return this image (saved as examples/out0.png to the client) and then delete it from the server so the next time it is called, the image generated will be saved to the same path.

A planet with id "ticId" is created with a profile image (examples/out0.png) and in its stats, the field "radius" and the graph generated from Lightkurve above.

A copy of a notebook that has that anomaly's dataset will be added to the "profile page" of that anomaly/planet, as well as the 3JS/Unity generator with the radius field filled in from the dataset.

The planet is then owned by the player who generated it. It costs 1 reputation/credit/currency to create it, but they can then earn 2 by adding some new data to it (saved as a new field), which will be a demo of the classification process.

Then, save export its fields from its table (including owner address) to a new lazy minted NFT

Linear info:
WB3-14

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

AuthenticationCreated by Linear-GitHub SyncData ManipulationCreated by Linear-GitHub SyncGenerative DataCreated by Linear-GitHub SyncMigrationCreated by Linear-GitHub SyncStatic dataCreated by Linear-GitHub SyncSytizen-RepoCreated by Linear-GitHub SyncUnityCreated by Linear-GitHub SyncUser DataCreated by Linear-GitHub Syncdata sourcedata source for content generation in [HDASH-4]enhancementNew feature or requestgame mechanicsMetadata for game assets/objects being pushed between Unity through our APIgeneratorGenerating Metadata for NFTs or in-game assetsgoerliIssues relating to the ethereum components of Star Sailors, e.g. NFT, Moralis/Supabase

Type

No type

Projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions