Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411413 Posts in 69360 Topics- by 58415 Members - Latest Member: sophi_26

April 16, 2024, 02:14:38 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsIsomer [XCOM / dwarf fortress / survival sandbox] Now on Steam!!
Pages: 1 [2] 3 4 ... 7
Print
Author Topic: Isomer [XCOM / dwarf fortress / survival sandbox] Now on Steam!!  (Read 35529 times)
K1lo
Level 1
*



View Profile WWW
« Reply #20 on: October 12, 2012, 08:57:08 AM »

Somehow another week has gone past! Lots of progress with Isomer including improvements to rendering but the biggest change is combat (things now actually shoot at each other) and entity interactions.

When entities don't have any instructions in their internal command queue, a character type specific idle AI takes over. As part of this, all entities now scan what is in front of them to a range governed by their perception skill. If they detect hostile characters they will target and fire on the closest target they see. It's quite fun to sneak a couple of troops behind a small squad of aliens and open up before being spotted. If a unit comes under fire they will also try to spot where they are being fired at from, if there is a target within their perception range they will return fire. It's slightly hard to work out who is firing when two entities fire simultaneously at each other, but this will be fixed when the beam is matched to a weapon (rather than just originating and terminating in the middle of entities) but this will have to wait until the proper entity sprites are finished.


Actions (i.e. moving, firing, mining, building) also now deplete energy which is replenished according to the stamina skill of the entity. If the energy level of an entity drops below a certain threshold, exhaustion takes hold which effects the speed they carry out orders and their aim.

The world is really starting to come alive with entities reacting to each other  Smiley, I've also worked out exactly how entity upgrades are going to work but I'll save that for a longer post complete with screenshots once I implement it next week
Logged

Bandreus
Level 3
***


View Profile WWW
« Reply #21 on: October 12, 2012, 02:46:57 PM »

I somehow feel like you should control the aliens landing on planet earth and trying to take over it  Well, hello there!
Logged

K1lo
Level 1
*



View Profile WWW
« Reply #22 on: October 23, 2012, 09:44:53 AM »

Wow, it has been a few days since the last proper update! I took half of last week off so that played a part I suppose, but a break every now and then is good Smiley

Despite still being really early in the development process I got a little play-testing done which yielded lots of great suggestions. It was really helpful to sit someone who had never played Isomer down and, without telling them anything, see how they got on. Whenever I had to explain anything I made a note (excluding where functionality was missing or a work in progress). I then went through and redesigned / tweaked some bits to make things more obvious to new players.

Then my dev machine decided to go a bit wobbly, so I lost a day backing everything up and reinstalling the OS and Visual Studio (which seems to take an age!).

In terms of new stuff, I've got a rough design working for the unit upgrade screen. Each unit the player controls can have two bits of equipment (one on each arm) and armour. The player has to decide what to equip each arm of each unit with, i.e. weapon, mining or building attachments and each type of equipment can be further upgraded at a cost to overall weight. Here is a work in progress screenshot of the unit equipment screen (ignore the quick and dirty dev placeholders  Evil )


Dead aliens / units can be harvested for parts now which cleans up the battlefield a little bit. The number of resources recovered depend on exactly what equipment the entity had and a bit of chance.

I also fixed a funny bug which caused friendly unit to panic, turn and fire at their teammates when suddenly coming underfire.  Cheesy

Finally, I also formalised everything I want to do with Isomer into a rather spiffy design document. It felt a little counter to the spirit of indie development to write up a document like this, but it really helped to highlight things that still need thrashing out as well as solidifying the core ideas. Something I need to do is go back to my first post on this thread and update it with extracts from this, hopefully I'll find time this week to do that.
Logged

Impmaster
Level 10
*****


Scary, isn't it?


View Profile WWW
« Reply #23 on: October 25, 2012, 02:23:56 AM »

May I ask what you are making this with?
Logged

Do I need a signature? Wait, now that I have a Twitter I do: https://twitter.com/theimpmaster
K1lo
Level 1
*



View Profile WWW
« Reply #24 on: October 25, 2012, 02:27:48 AM »

May I ask what you are making this with?

Sure! The game is written in C++ using a game library called Sepia that I originally wrote to wrap up the standard lower level game engine plumbing a couple of prototype projects ago. It uses Allegro 5 for drawing at the backend. Placeholder art assets are made in GIMP although the artist/designer I'm working with uses Photoshop and Illustrator.
Logged

Impmaster
Level 10
*****


Scary, isn't it?


View Profile WWW
« Reply #25 on: October 25, 2012, 03:14:43 AM »

You said in your first post that the game was "real time strategy", but say that the game's combat system is like XCOM. How does that work?
Logged

Do I need a signature? Wait, now that I have a Twitter I do: https://twitter.com/theimpmaster
K1lo
Level 1
*



View Profile WWW
« Reply #26 on: October 26, 2012, 05:27:25 AM »

You said in your first post that the game was "real time strategy", but say that the game's combat system is like XCOM. How does that work?

XCOM games are both turn based (i.e. UFO: Enemy Unknown/Terror from the deep) and realtime (Apocalypse) strategies. Given the sizes of the worlds (including height and underground depth) I feel turn based would have slowed the action down to the point of frustration. I think it also adds to the action if the hostile units are moving and reacting in realtime as opposed to incrementally in turns. Don't get me wrong - I absolutely love turn based strategy games, I just wasn't convinced it would work with the other elements Isomer has like mining, building and exploration.
Logged

K1lo
Level 1
*



View Profile WWW
« Reply #27 on: October 26, 2012, 05:37:57 AM »

I didn't expect it, but I have spent a lot of time (this week and in general) designing and putting together the game HUD. It's something I think is so important to get right but getting something unobtrusive and intuitive is really tricky. The HUD in Isomer is now on the fourth design but I'm now really pleased it with. Some bits are still missing like transport ship countdown and building commands but the rest is there with placeholder icons and buttons.


The buttons at the top cycle through all/idle/attacking friendly units, center on the currently selected unit or dropship, scroll the view up/down (which is also done by the mouse wheel) and pause/unpause the game. At the bottom are the health and energy bars for the selected unit along with their equipment and AI state (i.e. defending, moving, attacking, mining and building). Bottom right are resource stats.
Logged

K1lo
Level 1
*



View Profile WWW
« Reply #28 on: October 29, 2012, 02:40:21 AM »

I somehow feel like you should control the aliens landing on planet earth and trying to take over it  Well, hello there!

I really like this idea, it has been rolling and rolling around in my head over the weekend. I'm currently thinking of adding biomass as a resource type which is obtained by harvesting humans and / or animals. Biomass would be used to heal, grow more troops and mutate them into more powerful versions... I like where this is going  Grin
Logged

K1lo
Level 1
*



View Profile WWW
« Reply #29 on: October 30, 2012, 09:10:41 AM »

Something I've found really useful when creating dialogs and HUD entries is the guides feature in GIMP. It's a good way of laying things out before you change a single pixel, to create one click on the image canvas borders (they look like rulers around the image) and drag the guide line to where you need it. Hopefully this will help someone  Smiley

Logged

K1lo
Level 1
*



View Profile WWW
« Reply #30 on: November 02, 2012, 04:42:31 AM »

The world generator can now create different types of world! Each world is unique in terms of resource distribution (worlds have different quantities of each resource type at each level) ruggedness of terrain, amount and type of life and overall feel.

The types of world available thus far are:

> Forrest world (rich with life and a good range of resources)
> Ice world (harsh environment but rich in mineral and rare mineral deposits)
> Desert world (rich with life beneath the surface, average resource distribution)

I still need to create and dynamically place features for the new world types, but here are a few early examples of starting areas from the current world generation code:



Aside from this, I have also been working on unit upgrades. The common starting alien can now be mutated into one of 18 different types of creatures along different tech trees, each with their own strengths and weaknesses.

This mutation mechanism is still a work in progress, I'm hoping to be able to show it in action mid to late next week, until then here is the brain dump design from which I am working.  Wink

Logged

verticalvertex
Level 1
*



View Profile
« Reply #31 on: November 04, 2012, 01:30:53 AM »

The snow/white fitted the game very well.
Logged

It's all good.
K1lo
Level 1
*



View Profile WWW
« Reply #32 on: November 07, 2012, 09:33:15 AM »

The snow/white fitted the game very well.

Thanks! I like the way it turned out too. All the blocks sprites are being redone at the moment by my artist, but I don't think the snow / ice blocks should change much if at all.

As for devlog update, the last few days have been a bit slow going. It's not always obvious where you're going to get stuck for a few days but the unit mutation (which is how you go from a basic worker creature to scouts, warriors or support creatures) seems to have sucked up a few days. It is finished now however (woohoo!) as is a prototype of the mutation screen.



So it is now possible to mutate through the tech trees (Scout, Combat, Support) to each of the 19 (!) different creatures you can command. Each have specific strengths and shortcomings and later mutations require significantly more resources to achieve. Unfortunately the sprites for each creature type are not done yet which makes the experience thus far a little underwhelming visually, however the entities in memory are now created correctly and have the capabilities and characteristics they should have.



Yay code  Cheesy

Whilst the coding side is charging along nicely the character / graphics design is a bit slower frustratingly. Whilst I am working on this full time, but my illustrator/designer can only put in a few hours a week due to other commitments. With any luck both the code and the assets will be ready for the same time... fingers crossed  Droop
« Last Edit: November 07, 2012, 02:16:16 PM by K1lo » Logged

zalzane
Level 5
*****


View Profile
« Reply #33 on: November 07, 2012, 10:08:51 AM »

oh my god convert those constant definitions to json immediately or i will hunt you down and do it myself
Logged
K1lo
Level 1
*



View Profile WWW
« Reply #34 on: November 07, 2012, 10:18:44 AM »

oh my god convert those constant definitions to json immediately or i will hunt you down and do it myself

I'm not using JavaScript, I'm using C++. EntityCoreStats is a POD with a helpful constructor. So no need for bloodshed  Shocked
Logged

zalzane
Level 5
*****


View Profile
« Reply #35 on: November 07, 2012, 11:00:43 AM »

oh my god convert those constant definitions to json immediately or i will hunt you down and do it myself

I'm not using JavaScript, I'm using C++. EntityCoreStats is a POD with a helpful constructor. So no need for bloodshed  Shocked

JSON is a gift to the users of all languages, not only javascript plebians.

http://jsoncpp.sourceforge.net/

In my opinion, it's good practice to avoid constants wherever you can. Having to recompile your project to change a constant is a huge hassle, especially in c++ where compiling can take ridiculious amounts of time.

By declaring your `constant' variables in an external json file, not only do you save yourself the time of having to recompile every single time you want to apply a tweak to your numbers, you don't have to redistribute your binary every time you do a balance patch, all you have to do is distribute the json files.

Also it's a very inexpensive method for letting your players mod your game.

I'll get off my soapbox now. Waaagh!

You can also use xml instead of json, but that would be pretty ridic considering how overly verbose xml is.
Logged
K1lo
Level 1
*



View Profile WWW
« Reply #36 on: November 12, 2012, 07:36:56 AM »

JSON is a gift to the users of all languages, not only javascript plebians.

http://jsoncpp.sourceforge.net/

In my opinion, it's good practice to avoid constants wherever you can. Having to recompile your project to change a constant is a huge hassle, especially in c++ where compiling can take ridiculious amounts of time.

By declaring your `constant' variables in an external json file, not only do you save yourself the time of having to recompile every single time you want to apply a tweak to your numbers, you don't have to redistribute your binary every time you do a balance patch, all you have to do is distribute the json files.

Also it's a very inexpensive method for letting your players mod your game.

I'll get off my soapbox now. Waaagh!

You can also use xml instead of json, but that would be pretty ridic considering how overly verbose xml is.

Ah, I didn't realise there was a nice C++ library! I am intending on doing something like this as it will make my life a lot easier as I start to add all the neutral and hostile entities, plus before I was making games I was modding so making open games is something I like to encourage.
Logged

K1lo
Level 1
*



View Profile WWW
« Reply #37 on: November 12, 2012, 07:41:18 AM »

Working on procedural building and structure placement at the moment. I've only created one basic type of building so far (instead concentrating on code to place them sensibly), but I like where this is going already.. here's a couple of stitched together screenshots.

Logged

K1lo
Level 1
*



View Profile WWW
« Reply #38 on: November 17, 2012, 07:30:47 AM »

Oh god  Shocked Shocked Shocked Shocked Shocked Shocked this took ages to stitch together, but I've wanted to show a decent chunk of a generated world for a while!



If you want to see a less scaled version you can grab it here.
Logged

ananasblau
Level 2
**


dressed up


View Profile WWW
« Reply #39 on: November 17, 2012, 08:26:27 AM »

Working on procedural building and structure placement at the moment. I've only created one basic type of building so far (instead concentrating on code to place them sensibly), but I like where this is going already.. here's a couple of stitched together screenshots.

Looking great, and that huge map too. Are you putting that structure creation into C++ code as well? You might profit a lot from including a scripting language like Lua for that procedural generation. And it will allow gamers to extend it, people love modding.
Logged

Pages: 1 [2] 3 4 ... 7
Print
Jump to:  

Theme orange-lt created by panic