Clairvoyance: Age of Starflight - Topdown Adventure Game

I’m sorry, I didn’t mean to snap at you… I feel like an ass now ._.

Back to being respectful, I’m trying to get the project as far as I can get it by myself before I open it up to help.

Hello again!

So, here’s the weekly update! I’ve got the very beginnings of spaceflight done! You can go from the planet, to your ship, to space! I also have that little cube that you can touch to get hurt!

DEMO THIS WEEK! (Sorry, no survival!) (Windows 64bit ONLY!! Sorry!!)


Press F to draw your weapon, and click to fire off shots, like before. This time, aim for that beautiful cube in front of you. Try walking up to it, too! The game will end if your health reaches 0.

Head outside of the bushes to the right, and walk into the back door of that cube there. (That’s going to change according to which ship you have!) You’ll be taken to your ship’s interior. Now, walk into the burgundy chair in that ship and press E (default key, will be changeable!) to go to SPAAAAAACE!!

While in space, use W and S to control your speed, and A and D to turn left/right. Those of you familiar with Asteroids will feel right at home with this scheme. When you’re done in space, press E to go back to your ship’s interior. (If you go back into space, you’ll notice that your ship’s last position will be restored. Ooooo, magic!)

Right now, this process works anywhere, for testing purposes. But in the final game, you’ll have to use the ship’s “landing computer” to go to space and to land on planets. And if you’re not on a planet, you won’t be able to leave the ship.

Let me know what you think! In the future, I’m not going to talk about what’s going to be in any future demos, because I don’t want to be wrong! However, I WILL try to release a demo every Friday! (Maybe even Christmas! But don’t totally count on it.)

SORRY ABOUT THE RED BOX AROUND THE PLAYER! Forgot to fix that!

Footnote: Here’s a barebones skeleton of the galaxy map. Each white shape is a sector of space to jump to.
Circle with Sun: Planetary System. Some planets will be here.
Square: Fleet. Center square is the G.U.M. fleet, far-off square is the Evil fleet.
Diamond: Point of Interest. Not sure what’ll be in each yet, but these can be anything from pirate bases to shipyards, from asteroid fields to nebulae.
I’m also planning on galactic events, such as solar storms, war battles, pirate raids, etc. Those will mostly happen in these diamond sectors.
Line: Jump path.



Notice that there’s a diamond off to the bottom right with no jump path. I’m thinking of making that some sort of long-lost mcguffin for one of the player stories. I’ll give it more thought when story time comes.

Keep in mind that these sectors will be big. Like, the planetary systems will have between 1 and 3 planets each, and those planets will take up the whole screen. Other stuff will go on around those planets, too. Space stations, highwaymen, all sorts of things.

If you’re disappointed by the small size of the map, maybe I should mention that the game isn’t supposed to be about exploration (though it’ll take place). It’s supposed to be about being part of a universe. I subscribe to the philosophy of “if this game doesn’t have everything you want, chances are there’s a game that does”. So, take that as you will.

Anyways, lots of work to do! See you next week! As always, I’ll answer any questions you may have!

For everyone else: You can run blender games natively by opening the exe with blenderplayer.

Linux/Mac:

/path/to/blenderplayer Galaxy\ Demo\ 2.exe

If it doesn’t work, it’s usually due to using \ instead of / in python scripts that reference filepaths. Or dependency on extra compiled libraries.

+1 post count woot

Thanks for that, I keep forgetting to mention the 64bit thing. :x

And in light of that, every demo I post from now on will be in .blend form. Despite my fears of theft.

Anyways, did you try out the game itself? Any thoughts?

Indeed I did! Though it was at work and time was limited.

Round 2:
-The concept of seamlessly switching from space control -> on deck was quite intriguing.

-A cool, yet perhaps superfluous feature would be customization of the ship interior. Anything from weapon-boosting generators to useless mementos from previous adventures. I personally found myself wanting to arrange the floor with cylinders of contrasting color.
Of course, the ship would have to be much bigger. Perhaps the size of the current outdoor map. Or maybe the size scales up as you obtain better ships.

So many possibilities.

I’m glad you like it!

Ships in this game will be like they are in a game like EVE Online. You won’t be bound to a single ship throughout the game, you’ll be getting different classes of ships (if you want to, that is!) and each will have different interiors. Some big, some small.

Players can only have one ship at a time, and they won’t go with you unless you go with it. By that I mean, if your ship is on Planet A, you won’t be able to get in it if you’re on Planet B.

LOTS of new things this week!

First of all, by popular demand, no longer is my little test guy stark nude!



However, these clothes are removable, so no promises about later! c;

Anyways. The biggest thing I’ve done this week is implement the inventory system. Since items aren’t going to be very a-plenty as they are in typical RPGs, I’m only giving the player ten inventory slots. Please tell me what you think of this; it’s this kind of thing that can make or break a game.


(also, if you noticed that the player looks smaller to you, it’s because I have a mousewheel zoom feature! It’s been there since before I made the thread, I’ve just forgotten to mention it until now! ^u^;)

It’ll be better explained in game with helpful tooltips later in development, but here are the features of the inventory right now:

  • Left-click an occupied inventory slot (on the left) to select it. Selected slots will display the occupying item in the center.
  • Right-click an occupied inventory slot to drop that item. It’ll spawn as a pickup in the main scene, which can be picked up with the E key when near it.
  • Left-click an unoccupied inventory slot while another slot is selected to move the item to that slot.
  • Left-click on one of the equip slots while an appropriate inventory slot is selected (only weapons go in the weapon slot, for example) to equip that item.
  • Right-click on an occupied inventory slot to unequip it. The unequipped item will be placed in the first available empty inventory slot. (It just occurred to me, while typing this one out, that I don’t have any protection against unequipping things while the inventory is full. That’ll be a bugfix for sure!)

I also changed my ammo system around. Like, a lot.
Instead of traditional ammo, I’ve taken the Halo plasma pistol approach and am using an energy system.


Here’s how it works. Every weapon shares the same energy source, a battery pack given to every citizen. This battery pack is powered by small energy cells that, while very powerful, burn out pretty easily.
While shooting with your pistol (THAT YOU HAVE TO PICK UP AND EQUIP, BY THE WAY), take a look at the little wheel in the bottom right corner. Notice that the green bar in the upper half is rising with every shot, and lowering slowly when you stop firing. You’ll notice that it turns yellow when you get high enough, and the blue bar will start going down. That blue bar is cell integrity. When that runs out, your energy is gone and you can’t fire your weapon anymore. Now, try firing until it goes all the way to the top. It’ll turn red, the integrity will go down faster, and you won’t be able to fire until the bar is green again (about half-way down).
Out of integrity? Hit the R key; it’ll consume a cell (not counted in the HUD yet) and the integrity will be back to full!

(tl;dr green bar is energy, when it’s too high it’ll consume blue bar, which functions as ammo.)

As far as other things, the player ship bounces off of surfaces now! Basically, once it collides with something, it takes the current speed variable and flips it. Since the ship slows to a stop before changing forward/backward motion, this makes for a really cool effect and makes it look like it’s rebounding off of the surfaces it hits.
Speaking of the ship, small detail, but I also added a flag to check for, and to log, proper orientation of the ship when you leave the pilot’s seat. So, if you fly to a different position and turn a bit, leave the ship, and go back into it, you’ll still be at that same position and orientation!

That’s all for today. I leave you with the current build of the game!

(this demo will only guaranteed work with Blender 2.66, as I prefer using touch sensors to collision sensors for many things.)

WASD as always. Walk up to spinning pickups and press “E” to, well, pick them up. The “I” key opens the inventory. Controls for the inventory are above. Tell me what you think of them!
(also, try out that mousewheel zoom! only on the ground scene right now, though.)
Getting the ship to fly is kinda odd right now. You have to walk up to the blue console on the inside wall of the ship, and left-click to “go to space”. Then you can go to the chair and fly. This is the beginning of that “landing computer” concept I discussed last week, and will be changed once I get to fleshing out the space mechanics a little more.

As always, tell me what you think! I’ll answer any queries you have.
See you next week, and happy holidays!

Nice work :smiley:

Thanks, BPR! Have you tried the game yet? Any thoughts?

Hey there!

Not too much to show off this week (Happy holidays, by the way!!), so no demo, sorry.
Although, as you can see, I decided on a new name for the game.
Clairvoyance: Age of Starflight
Tell me what you think!

Also, I added the female character model! (She has clothes already, don’t worry!)



On the front of little stuff:

  • Implemented the beginnings of the “surrounding memory” system for switching between space and ground. In layman’s terms, it gets a list of every entity object around the ship when you leave the cockpit (up to a total of 7, though that number may increase if it has to, which it might), and adds them in at the coordinates specified. This is so that you can’t just leave the seat in order to escape pirates :wink:
  • Got the template for the conversation menu started up, but it’s in no way ready for a showcasing.
  • Changed the weapon hit system from a physics-based bullet collision system, to a ray detection system.
  • Changed the way ship models on planets work, too. Before, a ship door relied on a static spot assigned to a planet map to be placed. Now, the ship door checks the ship model being spawned for a placement instead.

That’s all this week! I’ll keep in touch!

It’s looking good.
I had a few glitches, but that’s probably because of trying it on blender 2.72, I’ve not used an older version for a while now.

When going to space there was a problem with the zoom, it zooms out and then jerks to full zoom in. Then flickers… Not sure what’s going on there.

When I fire the gun it seems odd that the hit effect has a shadow. You can turn it off in the materials tab.

Other than that is works well, It takes quite a long time to use up the gun, which is good. :slight_smile: running out of ammo too often could get a little boring. Equipping clothes and items is simple enough. I couldn’t quite work out how to put things in crates though.

On the art side, females usually have shoulders only slightly wider than their hips. If you make the chest area look too big it can make the character look too masculine.


It is pretty difficult to find a reference for human female proportions which is not idealized or over sexualized, but there are some around, and it’s worth taking a look even if you’re doing “cartoon” morphology. If you get the proportions right, everything follows from there, so the model looks instantly better and animations look more natural.

Yeah, I hear actions are pretty glitched in 2.72. Sounds like it doesn’t know if the animation wants to keep going or not. :confused:

Forgot all about that! xD I’ll turn that off, thanks!

The guns have to be balanced a bit, but this is all rudimentary right now. I’m nowhere near the balancing stage yet.
As for putting things in crates… that’s a functionality I’m not sure I’m going to actually have. All that text is just test text (sorry, shoulda mentioned that =s ) that was really just there for show. As in, don’t worry, you can’t actually do that in the demo. :stuck_out_tongue:

Yeah. As a female myself, over-sexualization is certainly something I want to steer clear from. Proportions, though, is something I have to be careful with. Not just from the sexualizing side, but on the technical level, too. My armature bones are static, so I can’t change my body meshes too much between bodies or else it’ll animate oddly.

Thanks as always for stopping by, Mirror! I love your feedback. c:

after you parent the mesh/skin the armature,

you can scale bones in pose mode :smiley:

here is a little pack of weapon tests for wrectified, feel free to use anything in it,

(the demo was throwing a error about replace mesh btw)

edit(accidentally copied bad logic in camera) added correct file)

Attachments

WrectifiedFXPackB.blend (875 KB)

So, I’m going for a total character redesign.

I’m gonna make my humans kinda blocky. But not totally blocky; the edges will be tastefully flattened. I’ll show you my WIP when I post my weekly update this Friday.

I just didn’t like the way my current humans were looking. They’re too bulbous and curvy for my liking. I think blocky characters will fit my artstyle better, anyways. Besides, it’ll make designing clothes much easier, as they won’t be clipping through skin nearly as badly.

Sounds good.
It’s best to try a lot of different styles and see how they look in game. Lots of things that look good in your head or in their own blend file don’t work that well in game, and some things that you think are terrible work well once they are in game and moving around. Experimentation usually yields the best results.

When it comes to clothes you can do a full body swap, then you don’t have to worry about skin showing through.
Keep going! It’s coming along nicely. And happy new year!

I’m gonna stick to the original style. For now, anyways. It looks better in-game than the block person prototype.

Also, thank you for the body swap suggestion. I’d considered it early in development, but I thought it would be too, frankly, lazy-looking. But it’s looking okay so far!

Welcome back!

This week, Clairvoyance has seen some big progress. For starters, I’ve got my conversation system implemented!




The system is going to be universal for NPC interaction. Quests, shops, etc. will all be done through this conversational interface. Once I get NPC character models in, the model of whichever NPC you’re talking to will appear on the left, in the currently empty space.

Another major addition this week is the beginning of the cutscene I mentioned earlier that represents landing/taking off from planets.


Eventually, that little color-coded cube will be the model of whichever ship you’re flying. I need to do some serious work to it, though, because I don’t think it looks proper yet. I’ll have to tweak it around a bit.

On the front of little stuff:

  • Changed the way clothes work, based on Smoking_mirror’s suggestion.
  • Changed the transparent blue panel in the inventory screen to an opaque, black one. Tell me which you think is better.
  • Added a piechart-style counter for weapon ammo cells.

Demo time!

From now on, I’m going to offer both a .blend AND a .exe, because the .blend is broken in 2.7+, while not everyone can run a .exe file.

blend: http://pasteall.org/blend/33620
exe: https://www.mediafire.com/?z9cdvy9e0pph3d4

Walk up to the white block person and hit the E key. That’ll open up a conversation window, which in this case, is my shop prototype. Try buying and selling things. You can buy things for a static value, and sell them for 1/3 of that value. You have 1,000 Bark (the galactic currency) to spend. Again, unless you’re using the .blend there’s no counter for money yet, so keep count!
Also, use that landing computer in the ship from last week to play the cutscene! It’s different depending on whether you’re landing or taking off, so try it twice!

Well, that’s all this week. Thanks for reading, and I’ll see you next Friday!

Quick update:


Added a dropdown menu! This is going to be mainly for food items and other consumables, but I’m trying to think of other categories to include. What else would you do with an item? What else would you want to do that other systems don’t already do?

reload a gun, cook food, open a letter, open a box, split stacked items, carefully inspect an item, repair a broken item, take out the batteries (for use in another device)… Lots of things you could do, but it might be best to have some general actions. Inspect, open, disassemble, assemble, repair, etc…

Then you can set a dictionary to contain information about each item and a code word for what to do to the item if an action is performed.

A kind of example of this would be:

small_box = {"weight":3,
    "weapon": False,
    "can_wear": False,
    "on_open": "remove_contents",
    "contents": None,
    "on_repair": None,
    "on_inspect": "You don't notice anything unusual.",
    
def open_item(object):
        
    if object['on_open']:
        if object['on_open'] == "remove_contents":
            if object['contents']:
                put_in_inventory(object['contents'])
                object['contents'] = None
            else:
                print_info_to_console("It's empty!")
        else:
            print_info_to_console("That can't be opened.")  
            
open_item(small_box)   

But if you’re going to get in to that kind of territory you have to start thinking about persistent items, so that you have item templates and instances of those items. You can use classes for this, or just dictionaries or even lists, if you don’t mind remembering which index is which.

Some pseudo code for that might be like this:


import copy

if "ini" not in own:
    own['key_id'] = 1
    all_items = {}
    own['ini'] = True

item_type = "small_box"

item = item_templates[item_type]

new_item = copy.deepcopy(item)

item_dictionary_key = type +  str(own['key_id'])

own['key_id'] += 1

all_items[item_dictionary_key] = new_item

If you want to work with an item then, you use its item_dictionary_key to pick it up from the all_items dictionary. You only create a new item when it is placed in to the game, for example when it is first stored in a container, or when a bad guy drops it. it’s really best to store all the instances somewhere central like in global dict or as a property on an easily accessible game object (like the player or main camera for example).

With this method you can keep track of item damage, upgrades or ammo individually. But it does require more design work to get it working well and to be honest it’s not always worth the extra investment unless item management is one of the key pillars of gameplay in your game.