Space Bunnies

After some input from various people, I have added to the character icon list again. I’m happy with the overall look, but I have noticed my style changing for a couple of them as I have gotten to learn a little more about vector graphics.

I hope I am able to make this game fun for players as well as everyone who got a chance to have input on the design.

1 Like

More fun game art. I will be posting more about gameplay, instead of just art soon.


1 Like

Rogue-likes have a common element of having a changing and expanding universe. Originally I wanted to portray this by having different solar systems and galaxies you could explore and recording them in data if you wanted to return to them. Instead, I had an idea that grew of having a unifying story with a finite number of characters that could wander a finite universe that would change over a progression of time.

So, I am stuck with the dilemma of trying to express something infinite in a finite manner. The quick explanation is that I chose an arbitrarily large number. Fifteen. Fifteen isn’t a very large number, but if there are twenty solar systems in a single galaxy, and around ten planets in each solar system, there will be about one hundred and fifty places to explore during a single gameplay cycle, with a changing and progressing world around you.

My goal again is to represent a growing and progressing galaxy. I am doing this by having a population of NPCs with various levels of aggression or friendliness that wander the galaxy and populate planets. Over time they may move to different planets, fly around, or gain in skill level and strength. There are at least two hundred possible locations for NPCs to be at any point of time. Representing a growing population, over the progression of time I wanted to be able to add NPCs to the galaxy during the progression of a game. I again chose an arbitrary number to be my maximum population density. One fourth. At the fullest progression of time, one fourth of space is being occupied by alien species. This means that there are about forty (37.5) characters.

Now, I really don’t want to draw, model, and render forty characters. But I’m going to make this easier for myself. First of all, I don’t have to render them all at once, I only need to render the ones actively in a specific solar system that are visible at the moment (Around 2.67 per galaxy). I am not going to model each individual character separately, but have approximate avatars for different species (Feline, Canine, Equine, Amphibian, etc). Since I already have 17 graphics already finished for different characters, I can however at least create sketches for the remaining 23 characters I ought to have, but given the basic format and given that this is a prototype, it is permissible for me to just insert them as data points if necessary rather than having graphics for them.

Regardless, I can say for certain that the more I learn and discover about this world I am creating, the more complex and intricate it becomes. I hope many others will be able to find this project as fun as I have when I am finished.

Pseudocode for data storage to save between gameplay runs so I can load or save data between runs.

Shared Data

Shared data is comprised of variables shared by temporary and permanent data.

Characters = [A,B,C,D,…]

A = [name, species, Atraits, Astats, icon, mesh]

Temporary Data

Temporary data is erased and rewritten each game restart

World:

World = [galA,galB,galC,galD]

galA = [name, locX, locY,[planetA1, planetA2, planetA3]

planetA1 = [name, locX, locY, size, type, density, (CharName if occupied)]

Character Stats:

OutWorld = charList - inWorld[]

InWorld = [A,B,C,D]

Astats = [locName(galaxy or planet), health, level, equipment[],relationship]

Player Stats:

Crew = [A, B]

Stats = [fuel, money, shield]

Ship = [model, fireType, fireLevel]

ResearchLevel = [X]

Events:

Log += Event.new()

Permanent Data

Permanent data may be modified during gameplay but is not initialized or erased at each game restart

Character Traits

Atraits = [class, mode, aggression]

Campaign Events

Log += Event.new()

Logical Data

Logical Data will never be changed and does not need to be written outside of scripts

Classes = [Pilot, Engineer, Scientist, Medic, Soldier]

Pilot = [firepower, armour]

Weapons = [gunA, gunB, gunC]

Armour = [shieldA, shieldB, shieldC]

gunA = [firepowerBonus]

shieldA = [armourBonus]

Character selection screen concept design.

1 Like

Nice UI :smiley:
Some icons look low-resolution tho, do you render your textures with Anti-Aliasing on?

Hah, this was literally just a drawn up concept in Microsoft Paint. I just wanted to solidify my concept for placement of icons, buttons, and information. I plan to spend more time on the visual design.

1 Like

The background is meant to be animated, but I had trouble posting a gif.

1 Like

Wow, lovely work! :smiley:
Are the character profile icons hand-painted textures or renders of 3D models?

Thank you :slight_smile: Unfortunately they are only flat hand painted textures. My actual 3D models will be much less detailed and have a more cartoony feel.

1 Like

Here is a GIF version of the functional UI character and ship selection test.

I started a Discord, for those who are interested in more closely following my work, or giving feedback in the process.

1 Like

image
A redone 3D version of the main crew.

3 Likes

Awesome, looks a lot like a games i started making called infinity life. we had basically the same concept. too bad i lost the files :frowning:

I’m sorry to hear that :frowning:
It’s happened to me before too, that a blend file and it’s backups all got corrupted on me. Luckily I figured out that since I had an old executable that I could recover an old copy of the blend. Anyway, left that project behind at the moment. Have any old screenshots from your project?

I started building a website for a primary location for long term updates.

1 Like

Current Status of planetary interactions:
https://www.youtube.com/watch?v=uyVEgfCjFeI&feature=youtu.be

2 Likes