Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411626 Posts in 69391 Topics- by 58447 Members - Latest Member: sinsofsven

May 11, 2024, 11:37:49 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsScattered Settlements
Pages: [1]
Print
Author Topic: Scattered Settlements  (Read 1668 times)
Yeol the Clumsy
Level 0
*


View Profile
« on: April 05, 2023, 11:45:39 PM »

          Scattered Settlements (worktitle)

Update 1: short presentation

The odds that Scattered Settlements will ever reach a realistic release date is rather slim. This solo project is totally oversized, too big for an unexperienced solo-developer. But I'm in it for the fun of the development, less for the final product. But one may always dream...

What is Scattered Settlements about? The game will be focused on base building, with resources management and logistic challenges in a rural, low tech setting. Additional the player will be tempted by exploration, confronted with some diplomatic aspects, and challenged by a story-teller who will throw anything into the plot to make each playthrough challenging and different.

Again, this project is foolishly too big, and will never see any daylight, but never say never. For me, it's all about the journey, the learning, discovering, making mistakes and overcome them, solving problems and finding sollutions. This game is for me the playground. The end result is secondary.

What is the state of the game today? I've worked on this project for about 3 months, over a period of 1 year. The last 6 months I did nothing, but picked it up again a few days ago, with a totally different mindset: no stress, no deadlines. It's all just to have fun.

At the moment a rudimentary endless procedural landscape has been developed, with some indicative vegetation for testing biome and forest algorithms. Procedural generated villages scatter the landscape. At the moment I'm working on the activation of the player's avatar and NPCs in the game: so implementing pathfinding and action queues. To get the little people moving, a lot of new techniques have to be discovered, understood, tested, implemented, corrected and redone because of wrong initial understanding of the techniques used to tackle this subject.

First milestone is to have a minimalist version ready that can be called "a game", concentrated on the exploration aspect, with just the essentials to have the game mechanics working, no decoration, no fluff, basic UI and AI, enough to have it working. Exploration will be an important component in the final gaming experience, and needs to function coherent and as expected, which is not evident in an endless procedural environment...

Following is a short video showing this procedural landscape with the few Scattered Settlements...



Logged

Failing is Fine, it's all about the Journey
Yeol the Clumsy
Level 0
*


View Profile
« Reply #1 on: April 21, 2023, 10:45:11 AM »

         Scattered Settlements (worktitle)

Update 2: Terracing, Chasms, Pathfinding and Triangulation

The past 3 weeks I was quite enthusiast and motivated. I managed to find a few hours each day after work and between household chores. I'm satisfied with the progress made.

Firstly I managed to implement landscape terracing. Not important for the core game play, but since it's fun to do, it was time well spend. The result is quite satisfying.

Secondly I added locations where rare landmarks are coming, using a Voronoi algorithm to obtain some randomness. These structures will be a motivating part of the game, and need to be sparse. For the moment black disks are used as placeholders.

Thirdly I connected villages by a network of "closest neighbours". I used a Delaunay trangulation algorithm to find the closest villages. For the moment these connections are indicated with red lines. Later they will be replaces by natural running paths through the landscape.

Fourthly I have implemented a A* pathfinding system for the little people to be able to get somewhere. It takes into account the terrain steepness, but I noticed I need a "walkmap" to exclude unpasseable areas.

And lastly I created rare chasms in the landscape, because its fun to do, and they are interesting features to discover, and for the player to deal with.

I noticed now that my code is not prepared to receive an UI-system of some sort. So I started to re-code my entire project so UI can become a thing. This might take a week or two, but without the project would quicksand away. Two steps back to be able to jump farther later.

Following is a short video illustrating the few updates of Scattered Settlements...



Logged

Failing is Fine, it's all about the Journey
Yeol the Clumsy
Level 0
*


View Profile
« Reply #2 on: May 06, 2023, 12:31:10 AM »

         Scattered Settlements (worktitle)

Update 3: Textures and Coroutines

The past 2 weeks went quite well. During the restructuring of the code, I learned and understood the working of two new techniques.

Firstly I succeeded in implementing textures upon terrain. It brings colour and more life into the scenes. It's not at all final, but I'm happy already with this intermediate result.

Secondly I finely understood the working of Unity's Coroutines. Previously the UI would freeze when major computation took place: terrain generation, pathfinding, vegetation instantiation, etc. With Coroutines, the UI does not freeze anymore, and the player can continue doing his/her thing while heavy computations are done in the shadows. The disadvantage is that everything takes more time because it's all still single threaded. I've to see how System Jobs work in Unity to make it all multi-threaded. But that's for much later.

So, for the moment I'm still re-organizing the code after having adopted Coroutines. I also need to speed-optimize things, because the terrain generation is still take too much time to be usable during the dynamics of normal game play. So, still work ahead, but it feels good to see that things progress.

Following is a short video illustrating the few updates of Scattered Settlements...



Logged

Failing is Fine, it's all about the Journey
Alain
Level 10
*****



View Profile WWW
« Reply #3 on: May 11, 2023, 11:10:46 PM »

Cool, I'm looking forward to see how your world generation evolves. Keep up the good work!
Logged

Yeol the Clumsy
Level 0
*


View Profile
« Reply #4 on: May 22, 2023, 04:58:13 AM »

         Scattered Settlements (worktitle)

Update 4: Seeing the Light

During the eighties I learned the art of programming. Procedural programming using assembler and later C. I really liked the C language and its power, but programming in C was also a real struggle against the machine.

During the years 2000, I learned Java, and the object oriented approach of programming. It was a new world of concepts that opened in front of me. Leaving procedural thinking behind, and jumping on the bandwagon of objects and inheritance.

During the recent '20-ies, I developed a personal interest for Game Programming. I discovered the concept of entities and other typical game programming approaches, but never mastered it. A few months ago I picked up Unity in the hope it would aid me in realizing my project, and started programming in C#: some parts procedural, some parts object oriented, and struggling to keep the code readable. Unity and I were in constant conflict.

But two weeks ago I saw the light. The concept of Unity's GameObjects and Components started to get clear to me. So I ripped out all the current fuzzy and blurry code, and started to rewrite the code in smaller snippets fitting the concept of GameObjects and Components. It's not all done, but I must say, the code got much clearer, easier to read, to maintain and to expand. I'm still at the very, VERY early stage of the development of this game. But I'm having fun, and that's the most important part of this entire story.

« Last Edit: May 22, 2023, 08:14:43 AM by Yeol the Clumsy » Logged

Failing is Fine, it's all about the Journey
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic