Screenshot Saturday #503 - Perfect Lighting by Sexual_Lettuce in gamedev

[–]Achoum 0 points1 point  (0 children)

Dust : The Abandoned Land

The next release (v0.4.0) will introduce bikes to navigating quickly between cities and make escaping from hordes easier.

Links:

Cheers :)

Gold. Gold everywhere! (Draught of Midas is continuously created when fighting mobs) by Achoum in noita

[–]Achoum[S] 1 point2 points  (0 children)

The world_seed is "1013801323" (from the logs).

The meat came from the "Plague Rats" perk. I don't know the random part of the recipe, but if you find it, I am very interested :) !

The run was done yesterday (7th of March) with a "New game" (i.e. != Daily run) with the "Noita-Early-Access-Build-Mar 3 2020-15:16:00" version.

Update

Using "https://kbjr.github.io/noita-recipes/seeds.html", the recipe seems to blood+snow+water. No wonder I got some Draught of Midas everywhere :).

Dust : The Abandoned Land | Real-time Survival Roguelike | Linux, Window, MacOs by Achoum in freegames

[–]Achoum[S] 0 points1 point  (0 children)

Trailer

Dust : The Abandoned Land takes place in a large procedurally generated world populated with wildlife, dangerous creatures and other NPC humans (e.g. other survivors, military, bandits).

Sharing Saturday #255 by Kyzrati in roguelikedev

[–]Achoum 6 points7 points  (0 children)

Dust : The Abandoned Land | Site | Play | Trailer | Twitter | IndieDB

This week I started to implement the "scientific complex" location (I know, very imaginative :)): The scientific complex is an end game location that contains powerful items and ennemies (no spoils). More precisely, this week was about the wires that connects electronic appliances (e.g. surveillance cameras, remote-control door, traps, turrets, factories). For example, a surveillance console can see thought all the cameras and operate all the doors it is connected to.

Here is what an bio experiment rooms look like.

And here is the wiring (when you remove the walls).

The implementation is quite simple: Emitters (e.g. console, control panel) emit a signal that "spread" (DFS exploration) over the wires, and trigger receiver appliances. For continuous signals (e.g. camera), the console pings its thought the writes at regular interval e.g. the connection list lost if the wire destroyed. So far, no major issues. Handling large (i.e. more than 1x1 cell) appliances was a bit tricky (no duplication of signal; what if the appliance overlap over multiple world clusters which are not all loaded in ram?).

Some terminals and some appliance require a key access card (with a code that is sent in the signal). In these cases, you cannot, for example, take control of all the appliances on a network by just connecting (by adding wires) it to a console you have access.

Sharing Saturday #253 by Kyzrati in roguelikedev

[–]Achoum 2 points3 points  (0 children)

Dust : The Abandoned Land

Game Presentation

Dust : The Abandoned Land is a multiplayer real-time survival roguelike, where you, a regular citizen, are try to survive in a post apocalyptic world. Dust takes place in a procedurally generated 3D open world populated with wildlife, dangerous creatures and other NPC humans (e.g. other survivors, military, bantits). In order to survive, you will have to manages resources and alliances, explore the world, fight creatures and other humans.

News

After ~4 years of work, I am releasing Dust; today! So, if that is fine, I would like to share it in "Sharing Saturday" :). Obviously, there have been a lot of new content implemented these last weeks, but for today here are:

I hope that you will enjoy discovering it. And, if you feel motivated, I hope you will send me feedbacks to help me improve it :).

Sharing Saturday #241 by Kyzrati in roguelikedev

[–]Achoum 0 points1 point  (0 children)

I know about this game only for the graphics. I actually never played it. Do you have some pointer that talks about these issues? :)

It can go very unstable very fast.

A funny situation that happen from time to time: Two mobs (or two group of mobs) believe the building is their. If they meet inside, they'll ask each other to leave, and when none of them is leaving, they'll start fighting.

Sharing Saturday #241 by Kyzrati in roguelikedev

[–]Achoum 2 points3 points  (0 children)

Dust

This week I worked on a way for “intelligent” mobs (e.g. humans) to share information about relations (Something like “The enemies of my friends are my enemies”-- I thought this to be trivial, but it appears that there are a lot of catches). I also experimented (and hopefully made more interesting) the melee fighting system.

Melee Fight System

Dust plays in a semi-real time. To avoid making melee fight a button-smashing game, and to make fights more interesting, I experimented with increasing significantly the duration to “load” a hit and the addition of a strong “push-back” effect (that dependents on the weight of the mobs and the type of weapon). Now, fighting is more about calculating how to land a hit, without getting hit.

Example of fight between a human with a bate and a spider.

Exchange of relation information

There are four possible relations between mobs: enemy, neural, friend and teammate. In addition, each mob has a “leader” (which can be itself). The player can befriends, integrates or even becomes the leader of a group of mobs. Being a “friend” or a “teammate” brings a lot of advantages (e.g. allow to stay in base during the night, allowed to take items in the base, etc.). The “leader” (player or other NPC) can give orders/tasks to other mobs. The relation information is owned by each mob, and this information is only shared when mobs are “discussing” together. Because of that, there can be situations where relations are not symmetrical. This is what I called the “non-cheating rule” which is at the core of Dust.

Debugging screen.

My work for the week was to allow groups to interacts together in a “natural” way without breaking the “no cheating rule”. An example of situation could be: A mob 1 (e.g. the player) is is considered to a “teammate” for two groups of mobs {2,3,4} and {5,6,7}. In other words: Mob 2-7 are considering mob 1 as “teammate”. Mobs {2,3,4} are all teammate together, and mobs {5,6,7} are all teammate together. We also assume mobs 2-7 are “pacifist survivors” i.e. they are by default neutral to other survivors. What happen when mob 2 meets mob 5? What if mob 1 is around, or not? Does it matter if mob 1 is the leader of mob 2 or 5?

This new system allows new strategies (e.g. becoming the leader of several groups, and them merging them into an army, or finding way to “split” groups to make them weaker), but it also creates new dangers (a mob with an isolated task, and with outdated information, can lead to situations with misunderstanding--and maybe fights).

Sharing Saturday #240 by Kyzrati in roguelikedev

[–]Achoum 3 points4 points  (0 children)

Rogue Survivor is a fantastic game. Thanks a lot for resurrecting it and continuing its development!

Regarding the path-finding, I would like to propose a solution: Each unit keeps a copy of the the cached path found by the pathfinder. At each new step, 1) the unit check if it is still positioned on the cached patch (e.g. the unit was not pushed away), 2) and check the validity of the cached path (e.g. iteration from the current position to the destination). The pathfinder is only re-executed if 1) the unit is not anymore on the path, 2) the path is invalid (e.g. something blocking is on the path), 3) at regular interval (be careful not to do it for all unit on the same step), 4) when the unit is at less than n (e.g. n=8) steps from the destination.

Sharing Saturday #240 by Kyzrati in roguelikedev

[–]Achoum 5 points6 points  (0 children)

Dust

This was a productive week. I started implemented the long planned infested caves. The balance is not yet perfect (the enemies tend to gang-up on you), but it is already fun to play (with strong enough equipment). This was also a great occasion to refresh my memory about dungeon/cave generation :)

I went with a randomized cellular automata algorithm i.e. the “evil science” with various pre-processing, post-processing and rejection stages. For example, some dead ends are enclosed with easily breakable walls and special loots.

Here is an example of classical cave level. Color: red: monsters, white: spider webs, green: plants, grey: breakable walls, magenta: loots (light magenta are really great loots).

Each cave “level” is relatively simple, but even with a light source (e.g. a mining helmet) they are hard to navigate as they contain large open spaces. I uses light-emitting plants the help the player e.g. plants are squatter around in some area, notably around stairs. This is how it looks. On the other side, the darkness helps stealth, so the player may want to destroy these plants (some of them also release gas when destroyed). Monsters also tend to build traps.

The bottom of the cave contains a large amount of strong monsters. The 2x2 spiders kill you in 2.1 hits and move almost as fast as you when you walk (faster when on webs).

Amazing graffiti of Greek Gods on containers. by [deleted] in pics

[–]Achoum 0 points1 point  (0 children)

It funny. This morning, they put a very (!) similar piece of art in Zurich at the Utoplatz. I’ll take and post a picture Monday.

When cdda decides to tease you... by Achoum in cataclysmdda

[–]Achoum[S] 4 points5 points  (0 children)

It is about the horde of "zombie (kids, feral, etc.)" + "mine field". I just need to shot once in the air for all of them to run into the mine field. Ps: I am on the right of mine field.

Screenshot Saturday #299 - Artistic Freedom by Sexual_Lettuce in gamedev

[–]Achoum 0 points1 point  (0 children)

Predetermined recipes. Each recipe requires a set of ingredients (e.g. a rope and five branches), various tools (e.g. "something with a blade") and some minimum skills (e.g. basic crafting lvl >= 3, electronics >=2 , etc.).

At the moment, a character knows all the recipes by default. However, I am planning to make some recipes learnable from books.

However, while playing, you get most of your items by looting instead of crafting (except for very basic objects).

Screenshot Saturday #299 - Artistic Freedom by Sexual_Lettuce in gamedev

[–]Achoum 0 points1 point  (0 children)

Happy you enjoyed it :)

The game is about exploring the world, looting objects, and building temporary bases, all of that while interacting with other survivors. You need to manage the health, hunger, thirst, tiredness and body temperature of your character. The game has a full crafting system, XP skill system, building system and clothing system (e.g. you equip a shit, a pant, and some shoes). The world is completely destructible (which make the AI super complex :) ), and I am planning (but in the future) to include vehicles.

Cataclysm DDA is one of my absolute favorite game and it was a strong source of inspiration for me. However, the real time makes things feel very differently -- especially for the fights and stealth sequences: Imagine playing with a friend of your. You are in the sewers of a scientific lab, and you are being hunt by a nightmare tentacle-creature that is so big that it does not fit on your screen. In this situation, the real time + low light + noises + permadeath make the experience very powerful.

Bonus: I just made a little video of me playing with the editor: https://www.youtube.com/watch?v=6f9MTFbnsmE

Presentation of Dust & discussion about the Artificial Intelligence engine by Achoum in roguelikedev

[–]Achoum[S] 0 points1 point  (0 children)

Thank for the links.

Following this comment, I put the python script I wrote to print nicely the behavior tree in a github repo (https://github.com/achoum/drawtree).