Tumgik
#Empty Space Worldsetting
macabrecabra · 2 years
Photo
Tumblr media
Just quickpaint to practice rendering faces as I feel a bit rusty AND doubles as worldbuilding/concepting for space angels/Maleka!  Maleka minor are the most common of the “space angels”. This one has been named Tuval = w =  They are quiet and shy bean! 
Trying to get a general look of the head of just a common Maleka before I go to getting the full body down! 
12 notes · View notes
Text
Ghosts, spirits and Leon
EDIT // I DONT KNOW WHAT HAPPENED TO THE TEXT HERE this entire post is so cursed but if you click read more it should work just fine on the blog itself! 
Sinfonia exists within an actively used worldsetting I have called Hymnia (previously just named XXX since I suck at coming up with world names), and as such it has elements of that worldsetting on the background that might not be really clear or relevant in the game itself, so I’ll ramble a bit about them here. 
I have a perhaps more informative post on Sinfonia’s main site you can find from here and details more about the concrete worldsetting and the school area, so check it out! 
----------------------------------------
Ghosts, demons and paranormal phenomenon exit within the universe of Sinfonia: they are addressed as part of the history when humans and demons lived together, but it’s assumed they became extinct over a thousand year ago, making the world a place where paranormal no longer coexists and thus most people don’t believe in it anymore. Human ignorance is a powerful thing, and what hasn’t been relevant in our lives is easily forgotten and ignored, thus explaining why people are so nonchalant about the shared past with demonic creatures - out of their eyes, out of their mind. 
This is important background info because it confirms these things still actually do exist, and so people seeing things like ghosts is, more often than not, a real thing and not a figment of their imagination. Most of the Sinfonia’s main cast don’t bother with such things: Thomas and Walter don’t think they exist anymore (or perhaps never did), Jet keeps a respectful distance where he doesn’t deny them but wants to have nothing to do with paranormal, Claude and Jonathan are both afraid of ghosts and Rick has the typical arrogant “I’ll fight them” attitude typical for a child his age - he hardly knows fear. 
Leon, however, is different for the reason he actually can see ghosts! It’s something he has been able to do since his childhood, but for rather obvious reasons he never really talks about it: he knows most would either laugh at him or not believe him, and it’s not like Leon particularly enjoys seeing them either - more often than not ghosts don’t have anything nice to tell to those who still live. 
There is no real reason Leon can see them, he just does, and it started around the time he started school. Initially it would be small things; whispers from seemingly out of nowhere, footsteps in an empty house and shadows moving in perfectly still spaces. He was around 10 or 11 when he experienced his first genuinely unsettling and scary experience when he was visiting his grandparents’ large house and hid under the table when he realized there is someone else in the painting room with him, eventually seeing a pair of feet while hiding. He was so terrified he ended up fainting, and it’s the point where his mother took him to a doctor about this. 
Of course, Leon’s claims were not taken seriously. Instead he was told he had inherited “his mother’s hysterics” and was told to be treated with the same procedures his mother had once been. 
“I suppose it could be some type of hysteria,” he finally said. “Does it run in the family?”
“I have… been treated with some in the past,” mother replied, clearly ashamed.
“Then it could be that - it indeed tends to get passed on from parents to children, you see.”
“I’m not hysteric,” Leon insisted, only barely containing his anger between his gritted teeth.
“Treat him with the same things you have used, and it should probably work.”
“I’m not hysteric!”
But nobody listened to Leon. 
After this, the shadows would occasionally still return, but Leon would no longer speak of them. Instead, in order to avoid further doctor visits, he simply pretended they weren’t there.
When he couldn’t ignore the strangeness around him he’d just keep quiet and endure; close his eyes and cover his ears, as if thinking if he couldn’t perceive them, the strange things didn’t exist at all.  
As he grew older, it only became more apparent to the point Leon could no longer consider them a figment of his imagination: these strange beings, sometimes shadows and lights, sometimes people, could do and even say things; make things happen without Leon doing anything clearly affecting his surroundings in ways other people could perceive them as well.
But he kept quiet. He endured, he adjusted.
And he knew: these things, whether he liked them or not, were real.
The fact Leon can see these things is actually one of the reasons I like to write about him so much, and it reveals there is a lot more going on behind the exterior of the troublemaker he is and he keeps quiet about them. The only person who knows about Leon being able to see things others can’t is Jet, but even he isn’t entirely sure how to feel about it as he himself has never seen or experienced anything. Nevertheless, he never voices that to Leon, who clearly dislikes dealing with the strangeness around him. 
This also ties to the fact there actually is a resident ghost in Lottenberg academy that appears every year during a certain time, and sometimes people who normally don’t deal with anything paranormal can see him as well! There is an entire secret line of boys who know the ghost exist and who keep him company in the tower he hunts during the time he appears. It’s a secret tradition entrusted only to those who can keep a secret, but nobody really knows when it started and why it happened. Ilja, an upperclassman and now a high school student Leon admired as younger was the one who passed on the duty to Leon, and the two concluded this secret is passed on because it’d be awfully lonely for the ghost to always be alone. Leon actually tries to find out what happened to the ghost boy and if there is any way for him to be freed and let him finally pass on, but unfortunately he never finds one, and then ends up passing this position on to Rick.
I actually have two oneshots regarding Leon and the ghost stuff, one about his childhood and another about the tower ghost, taking place in when Leon was 14 and I’ll work hard to upload at least the tower oneshot this month! I also hope that one day when I’m done with Sinfonia I can write about what Rick ends up doing regarding the tower ghost, because I most definitely have a story to tell! 
But yeah at the end of the day the fact Leon has a strong sixth sense is not relevant to the Sinfonia game itself: it’s not mentioned in any way because it’s not relevant & Leon doesn’t talk about it much, but I feel like putting it out there is perhaps a fun little extra to his character. 
I also like to think it’s at least a small part of the reason Leon hates Claude: he does have legitimate reasons to hate him, but he also thinks Claude has a somewhat ghostly appearance given his complexion and light eyes that make his pupils really stand out in an eerie way. 
1 note · View note
islandsdevlog · 5 years
Text
Islands 0.0.1-alpha.20190301
Serialization and a Save/Load system
Added a basic save and load system that tracks almost all important state in the game world. A 'Save' and 'Load' buttons in the pause menu allow the player to save the current state of the world and to load the most recent save. Saves are stored in both a timestamped folder and in a latest save folder.
Surprised that there aren’t many solid guidelines, best practices, and tools in Unity for setting up a save system. There’s no one obvious way of doing it. After some research and prototyping, decided not to try and serialize MonoBehaviours and ScriptableObjects directly, but to construct a separate snapshot tree of the world. Some things to gain and some to lose with this approach.
One point against this approach is the large attack surface for state bugs. An early example of this is the PlayerAttributes scriptable object. The snapshot is an identical copy of its attributes. The snapshot constructor copies all the attributes over. LoadFromSnapshot() in the PlayerAttributes just copies everything back. It’s a simple flow, but more lines, especially boring lines, means more of a chance for a mistake. Missing some attributes in the save/load process is not the sort of bug that hits you in the face. Maybe it’s best to add some voodoo to try and make it work directly, or just try to serialize and patch over objects that are simple but large containers of data.
I’m a firm believer in bombarding state from outer space. In this iteration, some game world objects (the player and the NPCs) are destroyed and then recreated on load, while others (the terrain, world objects) are just updated. As things progress, I expect most of everything to move toward starting the state from scratch.
To properly serialize references to Scriptable Objects and other assets, I had use a simple ElementsDatabase with dictionaries mapping object names to their respective assets. Decided to use a bunch of serializable dictionaries for this. Picked this implementation. In this kind of game and target platforms, I don’t think there will be a need to lazily load asset bundles for these elements. A reference to every world object, tile sprite, and item data can comfortably sit in memory for eternity. If a time comes where it’s needed, it won’t be hard to add to the existing infrastructure. Still, I’m not happy with this solution. My main gripe is that the dictionaries how to be manually updated. If it becomes too much of a hassle or causes bugs, I’ll move to automatically populating the dictionaries when relevant assets are created, and/or with a script that rebuilds the dictionaries. To be continued.
Added an ElementsDatabase Scriptable Object with serialized dictionaries for items, world objects, and tiles. It’s used to look up the assets by their object names when loading snapshots. For the serialization to work with generics, had to define an ItemsDatabaseDictionary, a TilesDatabaseDictionary, and a WorldObjectsDatabaseDictionary plus property drawers for all of them.
Added a 'Save' and 'Load' buttons to the pause menu UI. Added OnSaveButtonClick() and OnLoadButtonClick() to the PauseMenuManager. Each initiates its respective process.
Added a SaveSystem static class to handle saving and loading.
Save() saves a world snapshot. It ensures that both the timestamped and recent save folders exist. It then takes a snapshot of the WorldMetadata and the World itself and saves it under metadata.json and world.json in both folders.
Load() loads a specific world snapshot by save name. It ensures that the save directory exists, then reads world.json, parses it into a WorldSnapshot and calls World.Current.LoadFromSnapshot(snapshot) to start the loading process.
SaveJsonSnapshot is a helper for saving a specific JSON data in a given folder and filename (under the persistent data path).
EnsureSaveDirectoryExists is a helper for creating a directory if it does not already exists.
Added a World singleton MonoBehaviour. It’s the root of the game world (with the game state floating by unattached). It manages creating and destroying the player. It has references to the world settings, the terrain tilemap, the world objects manager, and the characters manager.
On Start() it calls GeneratePlayer() which instantiates a player avatar from a prefab, positions it, stores a reference to it, and updates the camera target to follow it.
LoadFromSnapshot(WorldSnapshot snapshot) starts the loading process by delegating things down the tree. It calls LoadFromSnapshot on the world settings, the game state, the terrain tilemap, the world objects manager, the characters manager, and the player. Before calling LoadFromsnapshot on the player it destroys the player’s game object and regenerates it.
Added a WorldSnapshot as the main snapshot root. Its constructor receives a World object and delegates taking snapshots to further snapshots down the tree (game state snapshot, world settings snapshot, and so on).
Added a WorldMetadataSnapshot. It stores the game’s current version, the in-game time, and the in-game day. It’s not currently used. In the future, as save files become bigger, it will be used to display information about each save when the player selects one to load.
Added a WorldSettingsSnapshot and a LoadFromSnapshot method to the WorldSettings. It simply copies back and forth the world settings properties.
Added a CharactersManager script. It can generate a parameterized number of characters and place them around the world. It does so on Start(). It can also DestroyAllCharacters(). It tracks all NPCs in a list. Characters are randomly placed in the world, it doesn’t even check for collisions with other characters or world objects. LoadFromSnapshot() destroys all characters, then regenerate a character for each character in the snapshot and calls the character’s LoadFromSnapshot().
Added a CharacterSnapshot and a LoadFromSnapshot method to the Character class. It saves the character’s position, direction, action state, current idling time, and whether the character is currently in a wandering path. It doesn’t save the wandering path destination, so characters will start wandering to a different path on loading a save.
Added a PlayerSnapshot and a LoadFromSnapshot method to the Player. It saves the player’s position and direction, and delegates saving the player attributes and inventory to nested snapshots.
Added a PlayerAttributesSnapshot and a LoadFromSnapshot attribute to the PlayerAttributes scriptable object. It copies over all the attributes there and back again. This kind of code makes me feel bad inside.
Added a PlayerInventorySnapshot and a LoadFromSnapshot() method to the PlayerInventory. When saving, it creates for each item a PlayerInventoryItemSnapshot with its object name and quantity. When loading, it consults the ElementsDatabase.Items to retrieve the item data and add it to the inventory.
Added an optional quantity parameter to AddItem in the player inventory that defaults to one.
On Start(), agents update their direction in the animation controller. This synchronizes the animator’s direction with loading snapshots.
Added a GameStateSnapshot and a LoadFromSnapshot method to the GameState. It only saves the elapsed in-game time. When loading, it sets it back, then moves time forward by zero to recalculate all dependent attributes. Changed the GameStateManager to simply reset the time on Start() and then move it forward to 6AM. Previously, it only did so if the elapsed time was zero.
Added a TerrainTilemapSnapshot and a LoadFromSnapshot method to the TerrainTilemap. The snapshot saves all the tile names in a one-dimensional array. When loading, the ElementsDatabase.Tiles dictionary is consulted to find the right tile sprite to use. Since the world size might change, the tilemap borders collider is regenerated as well.
Added a WorldObjectsSnapshot and a LoadFromSnapshot method to the WorldObjectsManager. The snapshot saves the names of the WorldObjectGenerationData used to generate each world object in a one-dimensional array, using empty strings for tiles with no world objects. When loading from the snapshot, the ElementsDatabase.WorldObjects is consulted to fetch the correct generation data for a given name, and the object is re-added to the world objects tilemap in the correct position. Before doing so, DestroyAllWorldObjects() is called to remove all existing world objects, and the world objects tilemap is reinitialized and resized. After loading, the world objects are re-instantiated and the pathfinding grid is recalculated.
Added a checklist for adding tiles. Updated the checklist for adding world objects. Added a matrix of affected systems to consider when planning a task.
Renamed UpdateMovementDirection to UpdateLookDirection in Agent.
0 notes
macabrecabra · 1 year
Note
what if any of your ocs met a alternative version of themselves what would they do and how do they react?
Tumblr media
Actually, this is a HUGE part of the story of my Sci-fi Worldsetting involving the character Insector! He struggles a lot with his identity of who he was in the past who is a radically different person than he is now!
Both characters above are Insector. Left is his past self. Right is him now... can't go into too much detail, but know the struggle of identity between past and present self is big point, so why I chose Insector to answer this ask = w =
28 notes · View notes
macabrecabra · 1 year
Note
Do any of your OCs know martial arts, and if so what details ya got of em?
You would think in a Sci-Fi worldsetting filled with lasers and technological marvels of weapons, martial arts wouldn't be a preferred combat method...
Tumblr media
For Skelly though, that's his main weapons. His fists do all the talking, which is how his people have evolved. Skelly (not his real name...but impossible to translate his given name into human speak so the nickname stuck) is a master of his people's form of energy martial arts where he is able to manipulate various forms of energy, from potential energy to kinetic energy to heat energy.
This high energy martial art practices the idea of a strong defense is the best offense and focuses on turning attacks around on the attacker. Shooting isn't much use when that kinetic energy can be "absorbed" and deflected back with pure energy fists. Still, it is a talent that has to be honed and trained and requires discipline and absolute focus, something Skelly has....given his rank as a Interstellar Guardian! Such a title and role, given to those who embark on their journey for higher understanding and to achieve perfect perception and harmony, is carried by only a few of his people.
He is currently traveling and aiding the human Ares fleet and hoping to help what is left of Humanity finally be accepted by the intergalactic community to help them find a new homeworld. Fun note: Skelly's species (name still workshopping!) ARE a cousin of humanity! They are a hominid species taken from earth by another alien species and the ship crashed on another world, so Skelly's people have a more favorable view on humanity.... despite how evolution took them in dramatically different directions.
14 notes · View notes
macabrecabra · 2 years
Note
I love seeing your post so much and I can just feel the good vibes
Thank you! I always try to be positive and keep the energy up c:
Good vibes though...made me think about the space Seraphim in my personal setting so...good vibe baby Space Sperahim! <3
Tumblr media
all the good space vibes! now! <3
19 notes · View notes
macabrecabra · 2 years
Note
I am interested in your oc skelly can you right about them seeing something strange
And the last fic prompt! This one I had to rewrite, then didn't like the rewrite, so took time to rewrite it doubly so 83 Hard prompt to answer as don't want to get too spoilery! Title: Strange Rating: E for everyone! Worldsetting: Empty Space (Personal worldsetting) Characters: Skelly and Admiral Delgado Summary: Humanity had some quirks to it that were somewhat confusing...
“Is this…normal for humans?” The question was barely audible over the din of the fight going on below in the bar area below. The fight had started with some shouting only to escalate into a fight, but there was no move to really stop the fight. What security there was more or less surrounded the fight, keeping an eye that it didn’t get too bad and to keep others from joining in. The Asterikel, Skelly, had turned sharply at the fight, watching it for a moment before he had asked the question, confusion clear in his tone of voice. The admiral that sat across from Skelly took a long sip of her drink, barely casting a glance down to the fight taking place and the loud cheers, “Happens yes. Been watching that situation build for a few days. Two idiots who couldn’t stop pulling pot shots at each other. Mostly just the stress talking there though.” “And no mediation was proposed?” Skelly asked, the glowing eyes in the socket of his skull-like visage widening a touch in surprise.
A soft chuckle escaped the admiral, “Skelly? I don’t know how your people handle stress, but sometimes, sometimes you just got to throw some hands and get it out and those two have been at each other’s throats. If they keep it to the bar and there are no serious injuries other than pride, why not. Crew has been running hard of late.”
The Asterikel let out a soft hum, fingers tapping lightly on the glass of his drink, “My people turn to meditation and a form of mediation where all parties express their path. It is uncommon for fights between Asterikels to be allowed, and most are handled in specific ways at monasteries.” “Your people come off as being very hard to stress, you know?” The admiral said with a chuckle.
“I think it comes with how you humans seem to…overthink everything. Every choice is made as if it there is no life to be had after,” Skelly responded, “I find it strange really, Admiral Delago, how… rigid your people are and how everything is internalized.”
The old admiral gave a chuckle and a small shrug, “I think people just don’t like feeling we are putting a burden on others. Been in our culture to try and bottle things up since the dawn of civilization.”
“I don’t understand,” the Asterikel murmured with a shake of their head, “But I’m sure there are aspects of my people’s culture that make little sense.”
“The engineers are still trying to wrap their heads around how your people achieved space flight without ever using math,” Admiral Delago said with a smirk, “Or the finance people on how you don’t have a money system at all.”
Skelly gave a small chuckle, “Yes, I do not think the latter appreciate me saying that Asterikels measure “wealth” in the experiences you are allowed to have, not in the monetary price put upon it. On the emotional wholeness of each individual, rather than the power of one.”
The admiral gave a small nod, “Different walks of life. I’m sure though if they bothered to look at your history, it wasn’t always like that.”
“All things change with time,” Skelly paused, glancing to the admiral, “But much of human behavior has not since the destruction of the lost home.” The admiral sighed, glancing down to where the fight had come to its close and all parties separated and given room to breathe, “Our ancestors have made the adaptions they could, but… a lot of people want to cling to old ways because it was the ways on Earth. But a lot has changed. We have had to become more fluid, more accepting in order to survive. Better at taking care of each other because we need each other.” Delgado gave a faint smile, “But we have a long way to go and with every generation, humans are evolving into something different. My far-off terra ancestors would be having a conniption and throwing fits to see how society has to be now for survival.”
Skelly gave a small nod, “Change is good. Humanity changes like the earth, slow and deliberate, which seems so slow to my people who change like the weather of a turbulent planet. But I do admire your species tenacity to endure, despite it all.” “And we are happy to have you here to help us navigate and adapt to the community of space-faring species,” The admiral responded, raising her cup, “Helping us avoid as many intergalactic incidents and maybe one day be accepted among the powerful empires.” “I do what I can to help. After all, we are cousin species, yours and mine. The lost home, Earth, it was where once we lived before we were taken far away,” The Asterikel said with a nod, lifting his own class.
Admiral Delgado chuckled, “Yes, but our evolution kept our skeletons from being seen,”
“I still don’t get why some humans find that upsetting,” Skelly said with a sigh.
“Maybe later I can try to explain it, for now, I say some drinks and meditation are more in order,” Skelly chuckled, giving a nod, “That is an appealing path to take. I think I will join you, once again, for that walk.”
6 notes · View notes
macabrecabra · 2 years
Note
could you give some information about your favourite(s) oc? and why?
Tumblr media
Anon, I could rant for days about my OCs as I love them all 83 But the one that is standing out the most in my head is Insetor c:
Insector being the nickname the human crew gave as they can't pronounce his actual name with their human voice boxes! Putting more under the read more!
Insector is a big favorite as he has a complex character given he is very much from a very different culture living about a bunch of humans who don't trust him. His people have a reputation as being rather violent and yes he IS but it leans more to being ruthless and direct. Not to mention his character explores a lot about self identity, what makes a person themselves, memory loss, family and found family, friendship...just a lot packed into this character that I get to explore in the story and makes me excited to write them!
As for details, for now I'll give you the general knowledge ones to avoid too many spoilers! He is a part of the Invectiva people and has severe memory loss to the point he does not remember his name. The nickname "Insector" is a slang name for his species. Humans literally nicknamed him like nicknaming a dog as dog. Keeps to himself and is close friends with Joe Sapora whom he will murder for. Friends with Skelly whom knows the truth of things. In general the human crew avoids him as Invectiva are a hostile alien species and known for their aggression despite fact Insector is rather docile (mostly due to the horrific head injury).
In his former life/pre-head injury life, he was a controller prince of the Invectiva empire, although how high on the nobility rank he was is not known to the crew. Only Skelly knows the exact details as it was Skelly who brought Insector onto the crew. Lots of plot of the why there!
JUST EXCITED TO EXPLORE THIS CHARACTER SO MUCH!! Also love drawing the aesthetics of his face/outfits and space suit <3
6 notes · View notes
macabrecabra · 2 years
Note
Any curious dreams you've had lately?
Recently can't remember em well but they've been nuts HOWEVER my space Worldsetting for now called Empty Space originally started as an exceptionally vivid dream! ...still waiting for brain to let me have the epic sequel to it >.>
0 notes