Forum

> > Projects > Stranded III Dev. Blog
Forums overviewProjects overviewLog in to reply

English Stranded III Dev. Blog

117 replies
Page
To the start Previous 1 2 3 4 5 6 Next To the start

old Fish

DC
Admin Off Offline

Quote
Y U NO WRITE BLOG ENTRY?!
I didn't update the dev blog for 38 days and that's bad
But I have an excuse: I worked a lot on CS2D which is now on Steam Greenlight:
IMG:https://www.unrealsoftware.de/img/game_cs2d_greenlight.jpg


If you don't know CS2D: It's a free tactical top-down multiplayer shooter and working on it helped me to gather a lot of experience in multiplayer game programming. This knowledge will also help me to make Stranded III a better game.

You can learn more about CS2D at www.CS2D.com

Do you like CS2D AND have a Steam account? Then please vote for it on Steam Greenlight!

Anyway! There's also some Stranded III progress!

Fish
I spent some time making fish models/textures.

I already modeled the suregonfish earlier but now I finally painted a texture for it
> Surgeonfish @ Sketchfab

Missing Nemo? Here you go!
> Clownfish @ Sketchfab

IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/clownfish_pre.jpg

> click to enlarge


Aaaand I also started working on a shark and made two videos.
The first video is about the modelling process in Blender:
> Shark Modelling @ YouTube
And the second video about painting the texture in Photosh.op on my Cintiq pen tablet:
> Shark Texture Painting @ YouTube

IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/shark_pre.jpg

> click to enlarge


Note that after taking a look at some other references I decided to adjust the dorsal fin and some other details.
I didn't record these changes but you can see the changes on the model when you compare the models in both videos or take a look at the image above which shows the adjusted version.
edited 1×, last 06.05.17 07:49:53 pm

old Food & Drinks

DC
Admin Off Offline

Quote
Sprite Sorting Layers
Looks like Unity improved the sorting layer scripting API in one of the 5.X versions!
I adjusted my code and made it much cleaner and simpler using the new API. No longer setting layers by string ID and getting the int ID afterwards.
I described that ugly hack in dev blog #28 back in 2015 and I'm really happy that it is not required anymore!

Food
Eating food is important if you want to survive. So I made some more food models.

Meat for instance:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/meat_big_pre.jpg

> click to enlarge


And berries. They are insanely high poly (80 tris each!) for my standards and yes, they are basically just spheres. MADNESS! No idea why I'm even showing them...
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/berries_pre.jpg

> click to enlarge


Note that these are intended for single berries / as inventory item. When they grow on a bush I'll probably use another model with a bunch of lower poly berries. Maybe something like the Stranded I berries?! Each of them consists of just 6 tris:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/s1_berries.jpg

- don't click to enlarge - it's so low res that a bigger version of this image would just look worse. haha -

Drinks
Drinking is even more important than eating. My current plan is to have containers which can be filled with liquids. With liquids I mean the obvious stuff like water but also other things like wine or milk. Without a proper container you won't be able to take any liquids with you. One of these containers would be.... a bottle.
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/bottle_pre.jpg

> click to enlarge

This mesh also has quite some polys. That's because it's round and because the glass has an actual thickness so there are also triangles/faces inside. You can see it if you take a close look at the transparent wire frame pictures.

I think the rendered version from Blender looks pretty cool. I hope I can find a proper shader / the right material settings for Unity3D to make it look like this - or maybe even better?! - in-game. I didn't try that yet.

old Sardine & Health

DC
Admin Off Offline

Quote
CS2D
All that CS2D Greenlight stuff was kind of distracting for me recently. The good news: CS2D is currently on Rank #1 on Greenlight with nearly 12k yes votes! Thank you all for your amazing support!
> See CS2D on Steam Greenlight
> Try CS2D! Free download at CS2D.com

UI
Do you remember when I wrote about converting the Lua UI elements to C#?
I now worked on the Lua API of the C# UI elements so you can use them in Lua to easily and quickly build your own dialogs, windows and UI elements.
There are a lot of different UI elements with many settings so it will be a lot of fun to document all this...

I also rebuilt the inventory menu now using the new Lua UI API.
Most in-game menus will be fully scripted while most of the stuff in the main menu will be hardcoded but extendable.

Models
I made a sardine. I'm not convinced by the result yet and I guess I will touch it again later. Luckily sardines are quite small so it's okay for now.
> Sardine skin painting time lapse @ YouTube

Furtheremore there's now a bandage:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/bandage_pre.jpg

> click to enlarge


Which can be found in this useful first aid kit - well, if you're lucky enough to have one:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/firstaidkit_pre.jpg

> click to enlarge

> see 3D model @ Sketchfab

old 3D Inventory Items

DC
Admin Off Offline

Quote
3D Inventory Items
Why should I waste video memory and effort for 2D item icons? I have cool 3D meshes!
Unity 3D is - as the name implies - a 3D engine. An the entire UI is in fact 3D too. It just looks 2D. I can easily mix in 3D meshes! And that's what I did:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/inventory3d.gif


Fun stuff!
I'm using Graphics.DrawMesh (like I did for the icon preview rendering) this comes with the advantage that no game objects need to be instantiated for the 3D items in the inventory.

I use very simple code to get the right scaling for the 3D items:
1
2
3
4
Bounds bounds = mesh.bounds;
Vector3 boundsSize = bounds.size;
float maxBounds = Mathf.Max(boundsSize.x, Mathf.Max(boundsSize.y, boundsSize.z));
float scaleValue = 0.32f / maxBounds;
So I'm basically just getting the axis where the mesh bounds are the highest and then I use that for scaling. 0.32f is used because the UI has a scale of 100 units per pixel and inventory slots have a size of 32x32 pixels. 32/100 = 0.32f.

As you can see in the gif some items do not fit perfectly. That's mainly the case for items which are not "centered" in the coordinate system. The best example for this problem are the mushrooms. Their center is at their bottom, not in the middle of the mesh. I guess and hope that it isn't a huge problem to fix that. Letting these items rotate around their actual center might be a bit trickier though.

By the way regarding rotation: The way the items are rotating in the gif is just an example. The rotation in the final game will look differently. Maybe the items won't rotate at all or only a little bit. I have to find out what looks best. I also plan to make them scale up a bit when you hover them.

If you ask yourself what the first item is: It's a backpack without texture and which I accidentally exported with weird and messed up scaling.

Oh and please also note that I did not set up the materials for all these items properly yet. They all look a bit glossy and for many it really doesn't make much sense. I know!

Sorry for the long* post. Here's a potato!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/potato_pre.jpg

> click to enlarge




*) I'm aware that the post is not that long at all. 9gag people will understand.

old Offsets, backpack, 100

DC
Admin Off Offline

Quote
Inventory Item Offset
Remember the mushroom problem from last blog entry? The offset?
I solved it and it was easier than expected. The solution was to get the Renderer component and to use the center of its bounds. This offset needs to be subtracted from the original rendering position, taking the object rotation into account. Here's a code sample:
1
2
3
4
5
6
7
Quaternion renderRot = GetFancyRotationStuff()
Vector3 renderPos = GetFancyPositionStuff()

Renderer renderer = GameObject.GetComponent<Renderer>();
renderPos += renderRot * -renderer.bounds.center;

// do render stuff using renderPos and renderRot

Here you can see the result of that change. No weird offsets anymore!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/inventory3d_v2.gif

You can also see that I tried less annoying rotation and added a "scale on hover" effect. This is still work in progress and needs some fine tuning.
Colors are pretty ugly due to bad gif compression.

Backpack
It really annoyed me to see the white backpack in my inventory so I textured it!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/backpack_pre.jpg

> click to enlarge

I should have double checked the geometry before UV mapping. Now there's crazy stretching going on in some places but... hell.. whatever!

100
I did it! I made a model with exactly 100 tris! I didn't even plan it. Coincidence? Fortune? One thing is for sure: It's a tremendous achievement. People will tell the amazing story about the model with exactly one hundred triangles for centuries to come. And what majestic thing did I create while randomly hitting that wonderful triangle count? A snail. A slimy little snail. Not even a very good one (I screwed something up with the shell and I don't want to talk about it). Great!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/snail_pre.jpg

> click to enlarge
edited 1×, last 18.06.17 09:10:06 pm

old Crab & Arrows

DC
Admin Off Offline

Quote
Crab
Another animal! It's a crab!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/crab_pre.jpg

> click to enlarge

Oh yes, I know, insane triangle count for my standards but... these things have just SO MANY LEGS!

Arrows
I made some arrows. I plan to have more arrow variants in Stranded III than I had in Stranded II.

Currently the sharpened point arrow is the most simple one. It's basically a sharpened stick with feathers:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/sharpened_point_arrow_pre.jpg

> click to enlarge


If you have a sharp stone you can also make the more advanced stone point arrow which will cause more damage:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/stone_point_arrow_pre.jpg

> click to enlarge


You managed to get some poison somehow? Craft a poison arrow!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/poison_arrow_pre.jpg

> click to enlarge


And you can also set stuff on fire with arrows. You just need a fire arrow to do so:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/fire_arrow_pre.jpg

> click to enlarge


An arrow with a tranquilizer would also be pretty cool.
And I can think of a lot of other arrow types. E.g. other points like metal or teeth or bones. Or replacements for feathers like leaves or duct tape. There could even be a simple sharpened stick without feathers or anything. Of course that one would have a pretty low range when used as arrow.
edited 1×, last 02.07.17 11:34:23 pm

old Clay Pot & Gecko

DC
Admin Off Offline

Quote
Clay Pot Skin
Do you remember the magnificient clay pot modeling video? No?
> Clay Pot Modelling Video @ YouTube
Finally, about one year later (oh my god...) I made a (simple) skin for that thing:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/claypot_pre.jpg

> click to enlarge


Gecko
Yet another modelling video! I made a gecko!
> Gecko Modelling Video @ YouTube (20x time lapse)
I made the head extra big to make it look more cute

And I painted a texture for it because white models are boring (racism not intended):
> Gecko Texturing Video @ YouTube (30x time lapse)

Here's the textured model:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/gecko_pre.jpg

> click to enlarge


I'm not entirely happy with the texture
I rushed the texture painting a bit and it could be better. Also some weird UV texture stretching is going on along the mirror axis...
It's not a huge problem for this model because it just stretches the red pattern a bit. It actually looks kind of intersting, but... this effect isn't intended...

old Kits & Boxes & A Tiger

DC
Admin Off Offline

Quote
Kits & Boxes
I changed the color of the first aid kit because red simply seems to make more sense (and because of my recylcing efforts):
> First Aid Kit @ Sketchfab

Recycling FTW! Ammo boxes normally totally don't look like plastic first aid kits. They are boxy wooden or metal crates. I don't care. I just took the first aid kit and changed its texture to look a bit like a (somewhat weird) ammo box.
> Ammo Box @ Sketchfab

<Random Justification>
Even though this is not what a real world ammo box looks like, I somehow embrace the fact that the boxes/kits in the game look alike. This makes them easily readable for players. I may still decide to change that later.
</Random Justification>

Tiger Model
I'm working on a tiger model. You can see my current progress in the following video. It took quite long (over 2h) so I made a 40x time lapse. The video is available in HD @ 60 FPS!
> Tiger Modelling @ YouTube
The head still needs some changes. Looks too much like a bear. But I guess that a texture would also help a lot to fix that issue

Some words about how I create my models:
I do not blindly model them from my head of course. I have a second screen with reference images and sometimes even reference models. You can't see that screen in the video so I thought it would be good to mention it. The reference stuff allows me to quickly check proportions and details without minimizing Blender. Watch the taskbar closely and you can see when I switch to Chrome on my second screen to rotate my 3D Sketchfab reference. I use a mirror modifier in Blender. This way I only have to model one side of the model. The other side is just mirrored. Thank god that most animals are symmetrical! Other than that I'm mainly extruding, moving, scaling, rotating, knifing and merging stuff to make my models. For animals I like to start with boxes and to extrude them as required. When I make items I normally don't use the mirror modifier and I start with one of the primitive base shapes from Blender which is closest to what I want to make.

Unity 2017
Unity recently released the new major version of Unity: Unity 2017. I did not migrate Stranded III to the new version yet but I plan to do so because I want to take advantage of the improvements.

The downside of this is Unity's new licensing model. I had a expensive pro License for Unity 5 but they changed their license model to a monthly fee thing. I can understand that this is way better for them but I really hate monthly fees. Especially when they are rather high. My old Unity 5 Pro license is basically worthless now because I can't use Unity 2017 with it.

Is that a real problem? No, it isn't. The free version of Unity is basically feature complete. The only advantage of Pro is that you get some additional services and that you don't have to show the Unity splash screen in your game (and some limits in case you sell your games).

So I'll keep the free version for now.

old Chicken

DC
Admin Off Offline

Quote
Chicken
Chickens are great if you need eggs as food or feathers for your arrows! You could also just kill and eat them but who would do that?!
I made a video about making a chicken model:
> Chicken Modelling @ YouTube

And here's the textured chicken model:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/chicken_pre.jpg

> click to enlarge


After making the chicken I took the chicken model and simplified it a bit to get... a little chick
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/chick_pre.jpg

> click to enlarge

There are no plans to make adult and baby animals of each species - that would be too much work - but in some cases I might do so when it has an impact on game play. In this specific case the difference will be that chicken can give you eggs while chicks won't do so. They have to grow up first.
I also want to add a rooster later. Having at least one rooster and a chicken would allow you to breed new chicks for even more eggs. But same thing again: I'm not planning to make female and male animals of each species. Wild animals will probably just spawn - depending on some environmental conditions.

old Aaand Action!

DC
Admin Off Offline

Quote
New Plant
There can never be enough plants! So I made a new one:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/dieffenbachia_maculata_pre.jpg

> click to enlarge


Earthworm
The chickens from the previous dev blog entry need food! So I made an earthworm. Of course it can also used as fishing bait!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/earthworm_pre.jpg

> click to enlarge


I could have done that model with less tris but I need those to add some nice animations later.

Animations
Which brings me to the next topic: Animations.
I did not animate anything in Blender before which is why I decided to start small. So I took the snail model, added bones and made some simple animations.

This is the crawl cycle animation. No legs, no arms. Basically just 2 keyframes (acutally 4 with the starting position inbetween but it could be just 2). Snails don't move like this in real life but this animation makes it a bit more exciting!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/snail_crawlcycle.gif

Of course this is not the actual animation speed which will be used in-game. That should be much slower.

Afterwards I made a death animation. This one really still needs some work. I wanted to add some twitching but it doesn't look good. I will probably make it only fall and curl up.
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/snail_die.gif


And here are various other animations combined in one GIF:
• wobbling with the antennae (idle)
• moving front and back part up (could be played when it's hit)
• moving only the head up (could be used for different things)
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/snail_misc.gif


I admit that all these animations are very rough and could be refined but hey it's just a snail and these are my very first Blender animations!

old Kiwi Bird & Bow

DC
Admin Off Offline

Quote
Kiwi Bird
I took the chick model and modified it a bit to get a little kiwi bird!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/kiwibird_pre.jpg

> click to enlarge


Bow
Do you remember the arrows (entry #68)?
I finally made a bow! Hooray! This one is a rather primitive one. It's a stick with a cord. The stick is carved a bit for optimization.
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/simple_wooden_bow_pre.jpg

> click to enlarge


I will probably even add a more primitive bow. Without any carving. The pro of that bow would be that you don't need any tools to create it. The contra would be bad values. Lower range, less damage.
A long bow is also planned and there will probably even be more variations.

What about Slingshots?
I also had some thoughts about the slingshot. In Stranded I and II you were able to craft it with a stick and a vine which is quite unrealistic as a vine isn't very elastic. I might remove that combination and therefore also the slingshot as an early weapon.
This will also make the game harder because you won't be able to shoot pebbles and other small items easily. You will have to craft arrows which means that your ammo will be very limited and every shot counts. Well... at least in standard survival mode.

Does that mean that there won't be slingshots at all? No, not necessarily. There might be more complex ways to craft them. Like tapping rubber trees to get rubber etc.
By the way: If you like slingshots you should take a look at these slingshot videos made by a crazy German dude!
edited 1×, last 27.08.17 07:30:26 pm

old Mesh Decompose & Rooster

DC
Admin Off Offline

Quote
Mesh Decompose Algorithm
I wrote an algorithm which allows me to automatically split meshes. You just pass in a Unity game object and you get a list of new game objects as a result.
There are currently 3 different implementations:
• Split by material: Simply generate a new mesh for each used material in the input mesh. If the mesh has just one material nothing will happen.
• Split by connected triangles: The algorithm checks all triangles and sees if they are connected. All groups of triangles which are not connected with each other become a separate mesh. Different materials also become a new mesh.
• Split randomly: Works like connected triangle splitting but you can define a min/max range for the triangle count of the resulting meshes. This way you can get smaller pieces.

You can see the "split by connected triangles" mesh decomposition in the following video:
> Mesh Decompose @ YouTube

(and no, this is not exactly what cutting down a tree will look like. It's just a demonstration of the algorithm)

Since trunk and palm fronds have different materials, they are split anyway. The palm fronds however all have the same material. They are split because their triangles are not connected with each other.

The Chicken To Rooster Transformation
I used the chicken model as template for my new rooster model!
> Chicken To Rooster Transformation @ YouTube

Of course I also had to work on a new skin for the rooster.
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/rooster_pre.jpg

> click to enlarge


If you take a careful look at the picture you might see that I applied some more slight changes to the mesh (tail feathers) after recording the video.
edited 1×, last 27.08.17 09:06:02 pm

old Halloween & Tiger

DC
Admin Off Offline

Quote
Once again long time no update! I'm quite busy with the CS2D Steam release which will happen in about 2 weeks (November 15, 2017). Valve already approved everything!

Happy Halloween!
Also Happy Halloween everybody! I did some quick virtual pumpkin carving with the Stranded III pumpkin for this special day!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/halloween2017.jpg


Tiger
I showed my attempts to model a tiger earlier. It looked like a bear. While I somehow managed to make the model look a bit more like a tiger, I failed horribly at making it look cool, threatening and not retarded. I recorded a video of my attempts anyway. I invested way too much time already but this thing still needs some serious work. The tiger is one of the most important animals. It might be the most dangerous, agile and fast land predator in the game. This is why it shouldn't look too stupid
> Tiger Texture + Improvements @ YouTube

old Iterative/Incremental Development

DC
Admin Off Offline

Quote
2018!
Wait! It's February already and there's no Stranded III dev blog entry for this year yet? Let's change that!

After writing the last entry, CS2D has been released on Steam which is one of the reasons why I didn't manage to work on Stranded III a lot. I do have kind of a New Year's resolution though: I will change the way I work on Stranded III and I'll set a deadline for myself.

Iterative/Incremental Development
I set the wrong focus during the development of Stranded III. I spent too much time with working on UI stuff and 3D models and I didn't work enough on the actual game. Therefore I do not have a game with fun game play yet which is a difficult and demotivating situation. Also there isn't anything playable worth sharing with you.

Therefore my new goal is to develop a very basic playable multiplayer version as soon as possible. I won't care much about the look of it (silly placeholder assets incoming) and I'll focus on functionality.

In case you missed it: I also mentioned this in my Unreal Software 2018 news

Deadline
I already put a lot of work into this project and I do not plan to give up. On the other hand however I can't continue like this (working without playable results) forever. Therefore I'll set a deadline: I will either manage to create basic playable multiplayer alpha this year or I'll cancel the development. No worries, I'll do my best to make Stranded III happen!

What's Next?
The last few weeks I spent a lot of time creating a separate minimalist multiplayer project in Unity which uses my own UDP networking library and which is connected to the U.S.G.N. master server. It's a proof of concept and it's already working. The code and experience I gathered with this will help to improve Stranded III. I will try out a few more things and then merge it with the Stranded III code base.

Here's an awesome picture of the amazing multiplayer test project:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/netproject_pre.jpg

> click to enlarge


My next goal after that is to work on a new terrain system and map topology because I'm really unhappy with Unity's limited terrain system.
edited 1×, last 18.08.18 10:16:54 am

old Terrain Concept

DC
Admin Off Offline

Quote
Blog time! I moved to a new flat (I'm still living in Hamburg), switched my job and updated CS2D since my last entry so unfortunately there wasn't much time to work on Stranded III but I do have some stuff to write about nevertheless!

Network Library Progress
I worked on my network library. It now allows to send packages of (in theory) any size without causing trouble by exceeding the MTU of hardware/software involved in the process of transmitting data over the internet.
To achieve this I check the size of a network packet before sending it. When it's too large it's split into multiple packets and some header fields are added. The recipient of the packet will read the header fields and assemble the packet as soon as all required packets arrived.
This is actually a very basic thing for a UDP-based network library but it was still missing in my implementation. It's not an essential feature but implementing a game without it means that you have to manually take care that your packets don't get too large. This is what I tried to do in CS2D and www.CarnageContest.com but sometimes it still happened there that packets get too large. This can lead to serious problems like disconnects. Some modems/routers even seem to crash completely and require a restart when you throw oversized packets at them. Fun stuff!
So thanks to fully automated packet partition this hopefully won't happen in Stranded III.

Terrain
In my previous blog entry I said that I'm not happy with Unity's terrain and that I wanted to make my own one.
I thought a lot about possible map formats, efficient structures to save data etc. and came to the conclusion that I will just stick to the heightmap approach because it's so simple and allows to create natural looking landscapes easily and procdeurally.
So most of the landscape will be very simple data-wise and therefore it will also be easy and fast to work with it.
To make landscapes more interesting I will however add two things to the classic heightmap approach:

• Cliffs
Very steep slopes can be converted to cliffs with a rock structure instead of rendering a simple slope with a heavily streteched ugly texture.
Since this system is only based on the 2D heights array of the classic heightmap approach big overhangs will not be possible with it. You could still add something like this by manually placing some big rock assets though.
I plan to generate the cliffs with actual 3D geometry using randomized patterns. If I don't manage to do so I could just use a triplanar shader instead.
IMG:https://stuff.unrealsoftware.de/pics/s3dev/terrain/concept_cliffs.png


• Caves
Another, way more sophisticated addition is the cave system that I plan to add. It requires additional data in the map because a 2D array of heights is not sufficient to represent underground stuff.
To make this work the terrain will allow to define the surface type "hole" which just creates a hole in the terrain surface. An additional data set will then be used to put 3D geometry under that hole. I did not decide how to structure that data.
The most complex and powerful approach would probably be a voxel terrain using marching cubes for smoothing. I will however probably just create a cave kit with some pre-built cave elements which can be connected to build different tunnels and caves.
IMG:https://stuff.unrealsoftware.de/pics/s3dev/terrain/concept_caves.png


Changing the way Stranded III can be modded
A lot changed since I started to work on Stranded III. Back then Unity's Pro version had a different feature set than the free version. One of the features not included in the free version were asset bundles. Asset bundles allow you to load additional assets - which have been created with the Unity editor - at runtime. Now everyone can use asset bundles and create asset bundles with the free version of Unity.
This is a great thing because it allows people to create assets with Unity's editor which is quite powerful and gives you a lot of new opportunities. Therefore I want to make use of it in Stranded III. Most Unity games which support modding actually work the same way. Kerbal Space Program for instance or Tabeltop Simulator.
edited 1×, last 16.06.18 04:04:22 pm

old Unite & Eyeballs & Market Research

DC
Admin Off Offline

Quote
Unite
Okay Unity announced a lot of fancy stuff at Unite 2018. They also finally have a some Unity terrain optimizations on their roadmap, greatly improving the terrain system performance. A self-written system will probably not manage to keep up with this (unless I invest a crazy amount of time) therefore I changed my mind: I will stick to Unity terrain.
I still want to do the cave thing and also the cliff thing mentioned in the previous blog post. Cliffs can still be implemented by generating additional geometry. For caves I have the problem that the standard terrain system does not allow holes in the terrain. To handle this problem I will probably add cave entrace meshes which simply teleport you a few meters trough the terrain surface when you use them. Pretty much like in Bethesda's Skyrim/Fallout games just without extra loading times. I think I even mentioned this approach a long time ago in another blog post already.

Here's a quick example what a simply cave part from the cave kit could look like:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/cavepart_pre.jpg

> click to enlarge


The vertices at the start and end are symmetrical and all parts which are designed to be placed next to each other will have the same start/end vertices so they fit together.

UI
Since I'll now use Unity asset bundles for modding, I can make creating menus easier by allowing people to do it directly in Unity.
Therefore however I have to throw away my ultra amazing UI system which is entirely coded/scripted. This is a big decision but there are many reasons to do so:

√ Like just mentioned you can use Unity UI in the editor to quickly build/layout menus which is much more convenient and also faster than doing everything via a Lua script
√ Unity UI has built-in anchoring and scaling features, which makes it easier to implement a UI which looks well in all resolutions
√ Text Mesh Pro is becoming an official part of Unity now and it's providing better text support than my custom text system

I'm quite sad that I will have to throw away my suphisticated UI components and features which already worked exactly like I imagined. Unity UI is okay but not perfect and also very basic and incomplete.
I can however reuse parts of my code to implement similar things with Unity UI.

Tiger Eyeballs
In a desperate attempt to make my tiger model look less retarded I gave him actual 3D eyeballs and moved some vertices in the face. It looks a bit better now but I'm still not entirely happy. I'll at least improve the eyeball texture. It's quite detailed but there's not enough contrast so it's hard to see and the color looks just bad (even though I took it from a photo of a real tiger)
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/tiger_new_eyeballs_pre.jpg

> click to enlarge


Yup, I know, heavy texture stretching going on in that face. I moved the vertices a lot to make it look a tiny bit better. I would actually have to re-layout the UV map and redraw the whole texture (or at least the facial part) but I don't really feel like doing that right now.

Market Research
From time to time I search for new upcoming survival titles and there really is a lot of stuff going on. I'll just mention a few games here. Of course there's a lot more.

• Green Hell
One game I found quite interesting is Green Hell. The graphics look quite good and they seem to have the approach to make the game very realistic with in-depth survival mechanics like treating wounds etc. This video gives you some more insights on game mechanics.
∗∗° Interesting project. I want to see more.

• Raft
I mentioned this one early 2017 already in dev blog 60. In Raft you are on a... guess what? right! On a raft! The game mechanics are super simple but very compelling. You collect stuff expand your raft and try to survive. The game has been extended a lot since my first mention here. There are now tiny islands (you just quickly hop on those, collect stuff and return to your raft) and a lot of more stuff to craft.
∗∗∗ A new approach. Simple but fun. I love that idea.

• Survisland
This one seems to have a quite sophisticated construction system - with "structure integrety simulation" according to the trailer. I'm not sure what to think about that. Construction and crafting look like they might be cumbersome in long term but this is just an assumption. I didn't play it. I'm also not a fan of infinite procedurally-generated worlds. It does give you an infinite sandbox but this sandbox is (most likely) quite boring as there is no or only little actual handmande content. Also nobody has enough time to explore infinite worlds anyway so in theory this is fancy but in practice it doesn't make it a better game.
I'm also not sure about the graphics. It looks quite good but some stuff looks very generic e.g. the character. Might be stock stuff. UI is quite minimalistic - in a bad way. It's early access though so maybe these parts are going to be improved. The user rating is actually quite good.
∗°° Looks too generic in my opinion.

• SUM
It's a VR survival game! It looks like nothing crazy is added to the standard survival game play though. They use mediocre polygon style graphics. And... is it just me or are all the colors quite dark? It could look so much friendlier with brighter colors.
∗°° I really don't like that art style and it also seems to be quite generic but it's cool to see a VR survival game.

Please note: The stars reflect my current personal interest in these projects only. It's not a rating. I didn't play most of these games and can't tell how good or bad they are. So if they sound interesting to you give them a try!
edited 1×, last 21.08.18 11:20:31 pm

old UI / Tiger /Warthog

DC
Admin Off Offline

Quote
UI Rebuild Progress
So as mentioned earlier my UI is now Untiy UI and this what the main menu looks like now. I also added more fancy particle effects to the main menu because everybody knows that the main menu is the most important part of every game and needs to be finished before everything else... right?!
> Watch Main Menu Stuff @ YouTube

Sorry for the missing mouse cursor in that video.

The menu also scales fine with different resolution now. Thanks to Unity UI it's quite easy to layout and anchor things. The target resolution will be 1920x1080 because it's still the most common one. At this resolution you will get the best UI experience. In other resolutions you have to expect up- / down scaling of some assets but it should still look good.

I'm also using Text Mesh Pro now which leads to super sharp texts in all resolutions! Hooray!

Warthog
I've been working on a model for a new animal: The warthog! It will charge at you and if you don't dodge you'll fly through the air a bit (and of course get serious damage and injuries). Afterwards you'll probably land on the ground and have to stand up first which makes you very vulnerable to subsequent attacks and other hazards. At least that's the plan. Same behavior would work great for animals like elephants, rhinos and hippos. They don't exist yet but I would love to add them too!
> Watch Warthog Modelling @ YouTube

Tigger Eyballs²
Another attempt to improve the eyeballs. I've drawn a more detailed eyeball texture in bright green colors:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/tiger_new_eyeballs2_pre.jpg

> click to enlarge


Domain moved
Random background information: I moved the domain Stranded3.com from GoDaddy to Namesilo last week. Mainly because it's cheaper - this is actually a ref link! Please register and buy domains - but also because I already have other domains at Namesilo and I don't want to use like 10 different domain providers.
It was still at GoDaddy because initially Tom from FPSBanana.com registered it for me and gave it to me later. Thanks again for that nice move! I hope everything still works fine but it looks okay from here.

By the way: Yes, I remember that I said that I want to work with placeholder assets and focus on the actual game play. I somehow don't manage to do that though. I need to work on visual stuff too from time to time in order to stay more motivated. This is why I still do models and art things here. I also know however that actual game play progress is more important right now and I'm still working on that as well. I hope to be able to show you more of that soon.
edited 1×, last 09.09.18 08:43:26 pm

old MOAR UI & Elephants

DC
Admin Off Offline

Quote
More UI Stuff
Some more UI stuff has been recreated to use Unity UI. I also made some new graphics to make it look better.

Checkbox
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/checkbox.gif

Note: The yellow cycle is from the recorder (I used Screen2Gif - it's cool!) and shows when I'm clicking.

Optionbox
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/optionbox.gif


Input Field
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/input.gif

The input field is - except for the box graphic - not my own work to be honest. I just wrapped some code around the input field that comes with Text Mesh Pro.
I'm quite happy that I can just use that. I implemented input fields on my own for most of my previous games. That's why I know very well that making a convenient input field with all the cursor and selection logic is actually a lot of annoying work.

Elephant Model
I'm aware that elephants don't live on tropical islands (especially after someone mentioned that in the YouTube comments) but I think it would be fun to have them in the game so here we go!
Elephants will be friendly in general but when you dare to provoke or even attack them you will have a serious problem. The plan is to make them charge at you like the warthog in that case. The difference however will be that they will be able to destroy almost everything in their way while running towards their target. Moreover getting hit by an angry elephant will nearly always be fatal.
So if you need some wood a clever strategy might be to provoke an elephant in order to let him uproot some trees for you
> Watch Elephant modelling @ YouTube
The model is work in progress and some details still need work. I tried to find an adequate balance of realism and cartoon style which is why the elephant has a huge rear part and quite thick and short legs.

Warthog Texture
The warthog I modelled last time now has a texture. Don't be fooled by its friendly punk look! It can be a very dangerous enemy in the game!
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/warthog_pre.jpg

This is a rough first iteration on the texture. I want to add some more details later. I might also make it look less friendly but I kind of like its cute, friendly and innocent facial expression. Just imagine that thing charging at you with exactly that face. I think it would be a hilarious experience!
Another option I thought about is making the hair on head and back black instead of orange/red but right now I'm happy with the current color.

old Tortoise / Toucan / UI

DC
Admin Off Offline

Quote
Tortoise
I made a tortoise model!
> Watch Tortoise modelling @ YouTube

There's also a (work in progress) texture already:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/tortoise_pre.jpg


Stranded I had a turtle (water), Stranded II a tortoise (land). The plan is to have BOTH in Stranded III! INSANITY!


Toucan
While searching for animals living in tropical rainforests I came across the Toucan. So I made one for the game.
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/toucan_pre.jpg


Actually the list I found contains a lot of nice animals and I'll certainly add some more of those.
I mean.. a poison dart frog?! Imagine catching frogs in order to make poison darts! Awesome!

Even More UI Stuff
I re-created a lot more required missing UI components:

Slider
Sliders can be used for settings with small value ranges...
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/slider_few_values.gif


...but also for settings with quite high ranges:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/slider_many_values.gif

Note that the amount of these little vertical bars adjusts automatically depending on the value range but the maximum is capped at 10 (even amount) / 11 (odd amount). Otherwise I would have to display 101 (0-100) of them in the slider above. That wouldn't be very helpful and it would also look stupid.

Combobox
Useful when you need to see all possible options at once (yup, the image below is a horrible example!)
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/combobox.gif


Moreover there are now context menus and tooltips!
The combobox mentioned above uses the context menu system internally. In fact it's a simple button which opens a context menu on click and when you press any button in that context menu, the button caption/value is changed to match the clicked entry.
Context menus also support scrolling (in case there are too many entries to fit the screen) and sub menus.
Sub menus are context menu entries with a little arrow which open an additional context menu with new entries when you point at them. Context menus can be nested indefinitely in theory. A sub menu could contain another sub menu and so on. Might be useful for the map editor. Maybe. I don't know yet.
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/context.gif


(Reminder in case you read all blog entries carefully: Yes, all that fancy UI stuff existed already. It was completely implemented in Lua with a custom Unity 2D system. Now it's using C# and Unity UI!)
edited 3×, last 04.11.18 07:12:19 pm

old Bars & Palm Trees

DC
Admin Off Offline

Quote
Health, Hunger, Thirst
I tried many different things to display values like health, hunger and thirst.
Circles, crazy shapes, vertical bars, horizontal bars, numbers...

What did I end up with?
Boring standard bars:
IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/hud_thh.jpg


Why so?
There are three reasons:
1. Style: I simply didn't like the look of the other options
2. Consistency: It was like that in Stranded I and II
3. Simplicity: Nearly everybody who ever played a game knows the concept of a health bar. Also probably everybody using a PC knows the concept of a progress bar. So I hope that most people understand quickly how that stuff works.

Boring, right? But hey, it's not thaaaat bad! The bars have a fancy icon and an animated glow effect (fun fact: I use a lot of that glow stuff in my game Carnage Contest - an amazing Worms clone! Check it out!)! So they are still better than the ones in Stranded I and II
The icons are just the first iteration by the way. I may decide to change them later.

Sleeping Issues
Experienced Stranded players may now ask: Health, hunger and thirst. Cool, I know that stuff. But what about fatigue aka tiredness?
Well... I'm really sorry to tell you that but it's gone. Again there are multiple reasons:

1. The concept of sleeping (and not being able to do anything for a long period of time) doesn't work well in multiplayer mode
2. Fatigue did not add much value to the game. It limited you a bit in what you can do per day (as there was no efficient way to get rid of tiredness except for sleeping) but in most cases you just slept every night and you were fine.

Sleeping itself won't be removed completely though.

In singleplayer you can still do it to skip the dark night hours.
Depending on the spot you sleep at (house, fire place...) sleeping can also give you some positive or negative effects (e.g. affect health a bit).
If you decide NOT to sleep for a longer time you will suffer from some negative effects like decreased speed and effectiveness.

In multiplayer you won't have to sleep at all and the person hosting the game will even be able to adjust the day/night cycle with a simple setting so people don't have to play in darkness for long or at all (this really only affects the sun light. It does not make the time go faster or anything).
Maybe I will still allow sleeping though. If I do so you will probably be able to rest for a short time. The game will go on normally during that time and you are vulnerable to attacks and theft but you would also get something in return. That might be some health points or a temporary boost on some values/skills.

More bars
Additionally there can be two bars which will only be displayed when they aren't full: Oxygen and stamina.

Oxygen will be displayed when you're diving. That was also part of Stranded II but the bar popped up in the middle of the screen there. It automatically refills when you can breath again. Another fun fact: It wasn't possible to dive at all in Stranded I! Even the ocean was just shallow water you could wade through. An invisible force pushed you back when you walked too far. Crazy stuff!

Stamina is for running. Yes, you will finally be able to run! Only for a short time and it will be more expensive than going the normal speed (hunger and thirst will be depleted faster) but it might save your life in some situations. Stamina automatically regenerates when you stop running.
I didn't make a final decision about this yet but maybe Stamina will also affect some other actions and/or blocking/fighting. This might be too annoying though. I still have to test and balance this.

IMG:https://stuff.unrealsoftware.de/pics/s3dev/ui/hud_o2power.jpg


Stamina and oxygen could be affected by skills/perks and of course also by consumable items or the equipment your character is wearing. I didn't add items for that yet but it would be cool to have something like that in the game.

Palm Trees
I love palm trees. I think they are beautiful and they remind me of warm temperatures and vacation because you don't see them in nature where I live (in Hamburg, Germany). The problem is that there are sooo many variants! Whenever I see a palm tree assets somewhere (e.g. in other games) I take a closer look and when I like them I decide to make something similar for Stranded III.
This is why I just made another version of the palm tree. Basically new hand-painted palm fronds. the trunk is the same as before.
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/palmtree_3_pre.jpg


For comparison: This is one of the other versions I made earlier
IMG:https://stuff.unrealsoftware.de/pics/s3dev/models/palmtree_b_pre.jpg


What about iterative development?
Some people might remember that beginning of this year I planned to switch to a more iterative development approach (entry 76). I didn't want to only keep adding random models to a totally unfinished game. I even set a deadline for a basic multiplayer alpha. End of this year.

It's December now. Only a few more days are left for this year and you see me still posting random models instead of showing game play. I didn't manage to do what I planned to do. No multiplayer alpha.

No multiplayer alpha yet.
I decided to pretend that there never was that virtual deadline. I'll continue with development because that's what I want to do.
To the start Previous 1 2 3 4 5 6 Next To the start
Log in to replyProjects overviewForums overview