Not logged inOpenClonk Forum
Up Topic Development / Scenario & Object Development / Settlement Design Document, Development
1 2 Previous Next
- - By Clonkonaut [ie] Date 2011-10-01 00:22 Edited 2012-01-03 04:40
Hi everyone!

I've set up a design document including most of what I or other people have written in my threads 'A brief history of resources' I & II as well as some scattered ideas which I gathered around in the forum.

Here it is! The Settlement Design Document.

Most of what I intend to do is written there. I know that there are other ideas but since the overall support in the mentioned threads was very positive, I hope to find some people around here interested in implementing what is in the document to obtain a proper settlement basis.

And just in case: I am aware of this page in the Wiki (Settlement Concept by PeterW) but the intention given there so far is different.

This thread is to manage the development. The todo list is in the document. We need scripting, designing and modeling!
If the thread becomes too confusing I might consider another way of showing Who's working on what.

Last thing, to remind everyone: The default branch of the repository is under a feature freeze. Please develop in the devel branch.
Reply
Parent - - By Clonkonaut [ie] Date 2011-10-01 06:41
Just a quick start: Gold ore and nugget are done. Gold is removed. Those three entries in the wiki page are striked out, probably a good way to indicate finished state.
Reply
Parent - - By PeterW [gb] Date 2011-10-01 10:18
What's the difference between gold ore and nugget?
Parent - - By Clonkonaut [ie] Date 2011-10-01 13:09
Gold ore is the material, nugget the item. If you want to know why, it's written here ;)
Renaming it won't be a problem, I think.
Reply
Parent - By Zapper [de] Date 2011-10-01 13:31
"because it does not work in the real world"? :o
Parent - - By PeterW [gb] Date 2011-10-05 09:21
Okay, I guess my question is then why we call the material "Gold Ore" instead of just "Gold"?
Parent - - By Caesar [de] Date 2011-10-05 13:11
Counter-question: Why should we name the material just gold, and not the item?
Parent - By PeterW [gb] Date 2011-10-05 13:16
Because as per Clonkonaut's plan we now have gold nuggets as well as gold bars?
Parent - By Clonkonaut [ie] Date 2011-10-05 14:12
I don't mind how the material is called.
Reply
Parent - - By Newton [de] Date 2011-10-01 11:28 Edited 2011-10-01 11:30

> I'm right now searching for a team [...]


It's great to see that finally someone takes the lead of settlement implementation! I think quickly motivated people will be found amongst the old OpenClonk team who jump right on board with you. After all, settlement development was frozen far too long, now lets make nails with heads!

I myself will try to help and advice as far as I can but right now, I want to limit myself to the engine side and administration of the website. When I have time to contribute something to the settlement, I now at least know whom to talk to :-)

> The default branch of the repository is under a feature freeze


Release today.
Parent - - By ST-DDT [de] Date 2011-10-01 21:17 Edited 2011-10-01 21:36

>I think quickly motivated people will be found...


Like me!
i would like to join the developers.
My favorite is scripting for CR, but i think developing OC will be fun, too.
My time is limited, but i will do what i can!
Right now i work on an update of one of my CR Projects, the agriculture extension package.
http://www.ccan.de/cgi-bin/ccan/ccan-view.pl?a=view&i=5923
I know the problems of the CR Plant and Harvesting system, and also the Problem of limited component options. (and CRs limited IDSpace...)

I'm German so my English is not my default language...
Parent - - By Clonkonaut [ie] Date 2011-10-01 22:40
Very well :) Iif you want to do some of the plants, have a look at the design document, there's something to do. But first you might want to get into OC development a little bit. Start off with getting the repository and have a look at the content so far. Join #openclonk (German is allowed in here) or #openclonk-dev (strictly English) on euIRC to get further help.
Reply
Parent - By Newton [de] Date 2011-10-04 23:23
...and if you have problems to understand some stuff in the developer wiki or think that some info is missing, tell me. Gonna add/correct that then.
Parent - By Clonkonaut [ie] Date 2011-10-03 00:37
Placement (DefCore) now accepts to new values: 3 for underground/cave placement and 4 for both, above- and underground placement. Use newest engine build from devel.

Please continue using devel branch until it's clear that is does not interfere with a whatsoever planned bugfix release.
Reply
Parent - - By Clonkonaut [ie] Date 2011-10-06 11:19 Edited 2011-10-08 05:45
Who does what?

Producer library - Maikel
Wheat (in the DD referred to as Corn) - Clonkonaut

Please see to leave a quick note if you currently develop something from the DD.
Reply
Parent - - By Zapper [de] Date 2011-10-08 09:50
I am currently having a look at the Power System in relation to flagpole interaction
Parent - - By Newton [de] Date 2011-10-08 10:50
What is the concept for that btw? If you have a flagpole, the energy is transmitted wireless and if you don't, you need to connect the buildings with lines?

Has the "but I like to connect buildings with linekit"-fraktion been overruled?
Parent - By PeterW [gb] Date 2011-10-08 12:35
I think there was a "I like linekits" faction - but I'd guess the "I want to use power lines" people were a fraction of that.

My stance is that we should use lines for something more awesome, like mechanisms. Make players wire up their drawbridges - at least that has interesting applications.
Parent - - By Zapper [de] Date 2011-10-09 08:01
I don't want to give up that the player has weird wires running through his whole base (example1 example2). But I'd like to try if we can put that from power to something else (mechanisms or even transportation - however that is going to turn out).

If the change turns out to make the game more boring, reverting it will not be the problem.
Parent - - By ST-DDT [de] Date 2011-10-09 13:08 Edited 2011-10-09 15:38
But i think we should give up the old liquidpipe system.

It should exist only one type of liquidpipe (not both source and drainpipe). And an engine/default function for liquid transportation.
The pump pumps liquid into the pipe and the structure connected gets an LiquidInput(int dMat, ind dAmount, object pSource, object pPipe) call
maybe there could be a function like LiquidOutput to. So structures can decide whether pumps can put liquids in or out.

Link:
http://forum.openclonk.org/topic_show.pl?tid=853
Parent - - By Clonkonaut [ie] Date 2011-10-09 13:37
The function exists since always ;) ExtractLiquid
Reply
Parent - By ST-DDT [de] Date 2011-10-09 15:58 Edited 2011-10-09 16:03
In my post i never talk about extracting mats from the landscape.
I tried to change the pipe system.
How the mat is transported and which calls are made.

Pump->Timer()
#SourcePipe->GetLiquid(int dnMat, int dnMaxAmount, object pPump)
##SourceObject->LiquidOutput(int dnMat, int dnMaxAmount, object pPump, object pPipe)
#TargetPipe->PutLiquid(int dnMat, int dnMaxAmount, object pPump)
##TargetObject->LiquidInput(int dnMat, int dnMaxAmount, object pPump, object pPipe)

So you can reroute/specify/block liquid flow, like you can block clonks enter a building because they are hostile.

Non of these objects should change something in another (only via funccalls)
the old system somewhere someobject decides which barrel to fill in the liquids in the targetbuilding. Thats stupid. ObjectExtractLiquid...
Parent - - By Clonkonaut [ie] Date 2011-10-08 05:48
Wheat is done, using the harvesting function from the plant library. A proper graphic for the seeds is needed!
Reply
Parent - - By Ringwaul [ca] Date 2011-10-08 12:53
Same graphic as the placeholder just remade using CC-BY? Perhaps a graphic on the sack?
Reply
Parent - By Clonkonaut [ie] Date 2011-10-08 14:12
That'd fine, I think.
Reply
Parent - By Clonkonaut [ie] Date 2011-10-09 02:46
Bread, Flour, Cooked Mushroom added. Flour needs a proper graphic.
Reply
Parent - - By Andriel Date 2011-10-24 14:10
Will you need construction kits to build buildings, like in Clonk Rage? Or just a hammer?
Reply
Parent - By Clonkonaut [ie] Date 2011-10-24 14:31
Just a hammer.
Reply
Parent - By Clonkonaut [ie] Date 2011-11-05 03:17
Finished reworking Mimmo's moss and lichen.
Reply
- - By Clonkonaut [ie] Date 2011-11-01 02:15
Progress Report

Development of the settlement ceased! I blame myself for being almost unavailable.

I won't sum up the things done so far. I brought the DD up to date, crossed out everything that has been done. But I saw the need to describe the serious tasks waiting for us.

What are we waiting for?

According to the order in the DD:

1. Libraries
Producer is half-way done, lacks the polishing and some minor stuff. But it's okay to implement and test the buildings, future changes won't affect them much.
Workshop isn't touched. It's not that much of a difference from the producer and won't take long when needed.
Testing has been shown that the producer is fine to the point we can make it. Saying that we are reaching the boundaries here. There is no way of proper item/contents handling. The old engine menus are somewhat useless, there is no way to properly interact with the contents of a building (checking, getting; just putting via collection zones is fine). On the side of the people how contributed to the settlement development so far, there is no one (as far as I know) who is able to do anything that comes near the engine changes that are needed for the menu handling concepts.
All we can do is hack our way through the old or the ring menus to get something that works for further testing. So what I want to do right here and right now is to set the ball rolling: Someone take up the menus, OC will need them in the future! Or resume discussion on this if needed.

2. Buildings
The main task in buildings were and are graphics! Ringwaul did some awesome fast jobs on this, providing us with all we have now. But there is more:
- Concepting & modeling for: Armory, Chemical Lab, "Spinning Wheel / Weaving Loom", Inventor's Lab, Shipyard.
- Finishing & texturing for the kitchen: http://forum.openclonk.org/topic_show.pl?tid=875

5 buildings from scratch and "that's it"! (until energy is needed.. ;) )

3. Items
Mainly to do: Cotton, Cloth.
Grenade Launcher and Mechanism are second-rank. Still there is confusion about the mechanism (theory needed on this hasn't been resolve; I have a mere idea on this but nothing of the mentioned tasks comes near something that's in the game right now; like connecting levers and doors).

4. Plants
Ringwaul had some first impression on the big mushrooms but there still missing graphics!
Cotton is untouched.
I have a half finished moss lying around. Scripting's okay and I'll do it, graphic is missing.

5. Material
Second-rank. Crystal is in discussion.

6. Interdisciplinary Connections
I should rather call this 'interdisciplinary disconnections' because that's what they are! As written above, menus are total waste land.
There are ideas on buying/selling but without menus it's pointless. The flagpole is somewhat buggy. I'll see to catch Zapper sometime and ask him if the flag library contains all what is should contain or if there are missing parts (if you read this, Zapper, you might want to write something about this).
Reply
Parent - - By Zapper [de] Date 2011-11-01 07:19

>The flagpole is somewhat buggy. I'll see to catch Zapper sometime and ask him if the flag library contains all what is should contain or if there are missing parts (if you read this, Zapper, you might want to write something about this).


There are missing parts - namely the auto-selling of gold and the power-chain integration.

But other than that. What bugs do you mean? Anything related to the ownership thing? I must admit that I did not test that properly back then
Parent - - By Clonkonaut [ie] Date 2011-11-01 11:56
Can you say a word or two about the two topics mentioned? If nothing else is urgent, I'd like to give the flag a glance.

I made a quick test with the flag and there are a few things that I recognised. First of all wasn't the flag supposed to be self-constructing (what about deconstructing)? And the markers appear in Construction() but I think Initiliaze() might be better? (just a minor thing of course).
The colour was somewhat broken. The markers had the right one, the flag didn't. The area from my flag clipped with one from NO_OWNER flags.
I tried to fix something but I didn't know what to make out of the global flag array. I first wanted to ask why it is necessary before touching anything.
Reply
Parent - - By Zapper [de] Date 2011-11-01 19:10

>First of all wasn't the flag supposed to be self-constructing (what about deconstructing)?


Mh, I didn't really care for the construction, since I thought there would be a construction library at some point that would care for anything related - should the flag really behave differently from other structures?

>And the markers appear in Construction() but I think Initiliaze() might be better? (just a minor thing of course).


Mh, true. Initialize() should be called at 100% construction - not Construction() - my mistake :)

>The colour was somewhat broken. The markers had the right one, the flag didn't


Mh, I guess that's because I didn't have graphics for the flag back then

>The area from my flag clipped with one from NO_OWNER flags.


Interesting point. How should NO_OWNER flags behave? Should they still keep their influence (no-owner-controlled-village) or should they act as if they were not there?

>I first wanted to ask why it is necessary before touching anything.


For optimization purposes. Especially for the parts for the power system.
It might be unnecessary if the engine knows what objects of a definition (/children of a proplist?) are existent at the moment and FindObject2(Find_ID()) is optimized in that direction (is that so?)

>Can you say a word or two about the two topics mentioned?


The auto-selling would be pretty straight forward. The current idea was (when gold is the only object that can be traded directly (/without something like a trading outpost etc)) to have gold be auto-sold in close proximity to a flag (with a nice effect and some floating dollar signs or something like that.. :)  )

The current plan for the power-chains would be that linked flags (linked by area intersection/touch) would count as "one base" where the energy could be transfered between buildings "wirelessly". (Producer buildings would "connect" to such a "base" and consumer buildings would request power)
I already started the work on the power stuff. So if you want to do something there, I could give you what I currently have (not much - mostly the definition of "linked flags")
Parent - - By PeterW [gb] Date 2011-11-01 20:21

> should the flag really behave differently from other structures?


Well, depends on how you want other structures to construct. Isn't it different already as it doesn't require a hammer to hoist?

> Should they still keep their influence (no-owner-controlled-village) or should they act as if they were not there?


A village is no-owner-controlled by default, isn't it? :)

Hm. Keeping neutral flags might be a nice way to block players from claiming a certain space though?
Parent - By Clonkonaut [ie] Date 2011-11-02 12:26

> Isn't it different already as it doesn't require a hammer to hoist?


So far, it does because we don't have a flag object to carry around ;)
Reply
Parent - - By Clonkonaut [ie] Date 2011-11-01 20:25

> Mh, I didn't really care for the construction, since I thought there would be a construction library at some point that would care for anything related - should the flag really behave differently from other structures?


I don't know. I just read this. I'm not up to date in case of any discussions. As well when it comes to:

> How should NO_OWNER flags behave?


It just felt wrong that their area was included into mine.
Reply
Parent - - By Zapper [de] Date 2011-11-01 20:39
Wait. Included into yours? So the "belonged" to you? Or was their area cut out off your area?
Parent - - By Clonkonaut [ie] Date 2011-11-01 20:52
Iirc there were no markers inbetween. That does mean that areas are connected, doesn't it?
Reply
Parent - By Zapper [de] Date 2011-11-01 21:47
Okay, then that is probably due to one !IsHostile instead of a proper check whether the flag is allied :)
Parent - - By ST-DDT [de] Date 2011-11-01 11:46

>until energy is needed.. ;)


Do we have the same function for energy (DoEnergy) like in CR?

It was quite anoying that we have the same function for healing (livings) and energy (structures)
what if someone wants to "charge" a (living) giant with energy?

Maybe we should rename it to health and use that as default for every object
so we don't need any Damage(....) {if (GetDamage()>100) Incinerate(); } Callbacks

In CR i wrote a medieval ram and i had to write this callback for every structure.
Parent - - By Clonkonaut [ie] Date 2011-11-01 11:59
We already have two libraries dealing with power management (although the way they do this is not finale). PowerGenerator has the functions DoPower, GetPower, SetPower. The internal power of the engine became obsolete.
Reply
Parent - By ST-DDT [de] Date 2011-11-01 14:15
ok
Parent - By Günther [de] Date 2011-11-01 13:57
All the electrical energy aspects of the internal Energy value are gone from the engine. The only things left are Energy loss from Materials (corrosive, lack of breath), death from lack of Energy and some script interfaces.
Reply
Parent - By Ringwaul [ca] Date 2011-11-02 03:45

>Development of the settlement ceased! I blame myself for being almost unavailable.


I've also not had much time recently; real life has become a pain in the ass.
Reply
Parent - - By Maikel Date 2012-01-02 13:44
During the current OCM I pretty much finished point 1. Libraries and menus. I think the current menus are at least good enough to have fairly smooth settling, what remains to do is to show production costs for the producers and the hammer, get some better graphics for the production menu, and decide on how to display the production queue (maybe a maximal length). Also there are some points where drag&drop must be implemented and maybe even shift+click for transferring all contents of one type at once (needs engine changes). We should gather some opinions on this, cause my view is only limited.

But all in all I think this point is not slowing down any further progress on settlement anymore.
Parent - By Clonkonaut [ie] Date 2012-01-02 17:38
Excellent!
Reply
Parent - - By Newton [de] Date 2012-01-03 19:15
Good work, Maikel! So everything regarding the contents menus work now? What about the callbacks of container-objects to the menu (collection, ejection, deletion) though?
Parent - - By Maikel Date 2012-01-03 19:58
I added an effect to containers when the menu is open, it works, but is not optimal. If you have a better suggestion, feel free to implement that or explain it to me.

Btw: How was Malta?
Parent - - By Newton [de] Date 2012-01-03 20:04
My suggestion was to implement a small library Item_Container that contains IsItemContainer (for global CreateContentsMenu-function) and the forward calls to the menu.

There are effect callbacks for the normal engine calls??

Malta was cool, I could show you some pictures sometime this week. :-)
Parent - By Maikel Date 2012-01-03 20:22

>Malta was cool, I could show you some pictures sometime this week. :-)


Sounds good

>My suggestion was to implement a small library Item_Container that contains IsItemContainer (for global CreateContentsMenu-function) and the forward calls to the menu.


Since it currently works (don't know how good, cause I didn't tested it "extensively", only some multiplayer rounds), I want to invest my time first in implementing some features for the other menus.

>There are effect callbacks for the normal engine calls??


No the effect just checks every frame if the contents have changed.
Up Topic Development / Scenario & Object Development / Settlement Design Document, Development
1 2 Previous Next

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill