Finding items is nice. Actually being able to equip them is even nicer. Here you see the very first outline of our Persona window. It’s still static and only has two slots. The next step will be making it dynamic, by enabling the player to drag and drop equippable items from the Inventory window to the Persona window. After that, we’ll need more slots than two!
Looking great, loving the updates!
Thank you very much, Addikins! I really appreciate you following me.
New main theme
Eppo worked on the main theme a bit and expanded on the (pretty crude) draft. The music you hear in this trailer comes much closer to what we envision, but knowing Eppo, he will still tweak some buttons before the final version is done (is a version ever final anyway)? We have combined the newest iteration of the main theme with images from the game for your viewing pleasure. Enjoy!
Programmers know how hard it is to accomplish this: finding an item, picking it up and moving it to an inventory, equipping it, removing it from your inventory, resorting the inventory, showing the result on your avatar, unequipping the item, and show that on your avatar and in your inventory too. Meanwhile all the visible and invisible information about the item, whether it’s displayed as a simple icon in a window or in full swing on your avatar, must be remembered and data integrity must be ensured. So many things that can go wrong! The round trip is complete now, which is a proof of concept: if this works with two items and two slots, it can be done with thousands of items and multiple slots.
There’s a lot of code under the hood steering all this. Also the drag and drop feature was completely programmed from scratch to get full control. An interesting bug was the background music fading away as soon as you changed clothes: this is because whenever you change clothes, the avatar is rebuilt, which automatically retriggers the audio dome you’re standing in at that moment (if any). We have now implemented a counter that adds one whenever you change clothes, and subtracts one whenever you enter a dome. If you enter a dome and the counter is zero, only then will the music fade in. A dirty solution, which hopefully shows that lots of unexpected things can go wrong when implementing something that looks so simple.
Well well, look at that! Keep up the good work.
Eppo has made a new version of the trailer music, which now sounds more epic than ever before. With 3,5 minutes of bombastic orchestral sounds and ethnic war cries booming from your speakers, this track is begging to be played loud. Listen! You will not regret it.
You can NOW download the entire track for FREE!
Not all enemies need to be placed consciously: we also need enemies that are not directly related to the story, for pharming, getting experience or simply immersion purposes. As the first level of our game features lots of beaches, we chose the scorpion as our first spawnable enemy. Spawnable enemies are enemies that are not placed in the world by us personally; instead we define areas and population densities, based on which the game itself will spawn enemies on random positions in said areas.
There is no standard system for this, and even though there are modules that can do this for you, we wanted full control over this feature, so that we developed a simple system from scratch ourselves.
In the interface of Unity we now see large blue rectangles on the beaches defining the spawning areas for our scorpions. It was quite complicated to make this: especially visualizing the spawn areas and being able to rotate them is quite a pain in Unity, because the software assumes that whatever you visualize should also be visible in the game. Whatever you want to see but not visualize in the game is called a gizmo, but it’s exactly these gizmos that only have very basic functionality (just rotating them is a pain)!
Another issue: after a recent upgrade of Unity our assets had inflated from 4 GB to 14 GB, and nobody knew what was causing it (not even Unity themselves), but by pure coincidence (we now know which button to press!) the assets deflated to 4 GB again, making the game a lot smoother and enabling us to re-enable shadows on grass and vegetation. Thanks to this bonus, we got much better graphics and even more importantly: much smoother gameplay!
Theory is nice, but what does this mean in practice? In the video you can see our scorpions in action. You will notice they have animations and sounds. If you look carefully, you will also see that we have refined the enemy health bars: they fade in and out based on the distance and the attack range of the enemy, so that you can’t cheat and spot enemies from afar that haven’t noticed you yet. Also, when enemies die they don’t just disappear anymore, but neatly fade away.
The good news: as we got the spawning system working, we can use this for many more enemies than just scorpions, so that we will be able to populate the world with many different monsters and animals!
Just browsed through from start to end of this topic. Great progress you guys are making in a relatively short amount of time!
Thank you very much for following us, Stef! It’s hard as we also have our day jobs and families, but we do our best!
Looks and sounds excellent!!! the water becomes a bit choppy though I have the same issues with my landing pads fire clouds. You do nice work
Thank you very much, Dimplements! As for the choppy water, which part in which video are you specifically referring to? There were some issues, but many of them have been solved already. Please let me know!
Hi, Loek_van_Kooten mostly the second attack of the giant scorpions and as follows just a bit!! it kinda looks out of the scene if you find a way to fix this please let me know so I can apply to my issues.
Ah, that’s the distortion shader kicking in of the spell effects. We’ll have to make a choice I’m afraid: either distort the spells and the water, or distort neither the spells or the water.
I think players will opt for the first option, but I’m curious after your thoughts on this.
Hi Loek_van_Kooten I’m sorry I’m working on getting some new enemies to shoot back. In your case I would distort the spell and see how the look and feel to that will works. When your done I look it over.
I’ll probably keep this as is for the time being, because the distortion in general looks really cool. Thank you for noting this though. I will keep it in mind; I often change my mind when enough people don’t like something
Loot and item stacks
Not all items are quest items. Sometimes you just need to gather ingredients for alchemy or money. Therefore, now all enemies drop items. From this, it’s an easy step to drop chances and drop loot tables.
Gathering all these items also means that your inventory will be full soon, which is why items in your inventory can stack now: a small number indicates the number of each item you have. This is pretty complicated to accomplish: when you add an item, we first need to check whether it already exists in your inventory. If not, we add a new item. If it does, we merely raise the number of the existing item. When you remove an item, we need to check how many of these items are in your inventory. If it’s more than 1, we simply lower the number of that item. If it’s exactly 1, then we completely remove it from the inventory. If one of these things go wrong, things go haywire and numbers start changing magically everywhere.
The character now also no longer moves after clicking an item you can pick up or use. This “feature” was not only annoying, it also resulted in countless glitches that enabled the character to move through walls and such.
We felt that the woods were a bit empty, so we added wildlife. This again led to lots of needed refinements in our spawning system, NPC behaviour, animations and landscape detection (we don’t want bunnies fall through the landscape or jump through trees). As all variables are randomized and the rabbits are not placed manually in the landscape, the system must support whatever happens and solve all possible issues. For example, sometimes the bunnies are spawned in very cramped spaces from which it is impossible to move. We detect this and remove these bunnies immediately, so that they can be respawned on a better position straight away.
Bunnies also need to be able to hop, so we implemented a simple jump system. This too is a bit more complicated than it sounds: bunnies jump at random, so the jump must work everywhere. Our world does not use kinetics, amongst other reasons because kinetics result in avatars being able to shove eachother away, which we find very unnatural. So gravity, jump force et cetera all had to be implemented manually.
Also, a very nasty bug during swimming has been solved: under water fog would simply disappear, so that it looked like the player was swimming in thin air. This turned out to be an issue in the water module itself in combination with Unity’s Post Processing Stack 2 that we are using: fog would only be displayed in the editor and not in the build. As building each iteration takes about 5 minutes or so, it took a lot of time to nail this one, as the game’s behavior in the editor was different from its behavior outside the editor!
All of this still needs some refinement, but we feel confident enough now to show you a video!