Not logged inClonkspot Forum
Forum Home Help Search Register Login
Up Topic Deutsch / Hilfestellung / [Gelöst] Produktionszeit ändern
- - By Serpens66 (More than 200 posts.) Date 17.09.2014 01:52
Hey,

ich möchte bei etwas, was in der normalen Clonk Chemiefabrik hergestellt wird, die Zeit ändern, die es zur Fertigstellung benötigt.  Von mir aus auch erstmal an einem normalen Feuerstein.
Im Feuerstein Script steht unter anderem "AlchemProcessTime", aber egal wie man den Wert ändert, er ändert nichts an der Zeit, was vermutlich daran liegt, dass diese Funktion nirgends definiert ist, zumindest hat "LocateFunc("AlchemProcessTime")" nichts gefunden.

Also kann man die Produktionszeit irgendwie anders ändern? Oder muss ich oben genannte Funktion selbst erstellen? Wie müsste diese aussehen?
Parent - By Zapper (More than 500 posts.) Date 17.09.2014 08:12
Ich hab mal in die Chemiefabrik (bzw. Werkstatt) geguckt und das scheint garnicht so leicht zu sein.
Die Chemiefabrike sagt dem Clonk einfach, dass er das Objekt bauen soll (AddCommand(pWorker,"Build",pToBuild, 0,0,0,0,0,0, 3);). Dann baut der Clonk das Teil wohl so wie auch Gebäude gebaut werden.

Ich glaube die Konstruktionszeit von Gebäuden hängt vom Gewicht oder so ab? War das nicht der Grund warum das große Schloss so ewig braucht?
Parent - - By Clonkonaut (More than 200 posts.) Date 17.09.2014 08:56
Was Zapper schreibt, stimmt, wenn ich mich recht erinnere. Du müsstest also am Gewicht der Objekte herumbasteln, da der Zusammenbau der Objekte von der Engine geregelt wird (eben genau wie Gebäude, nur dass du den Prozess in der Werkstatt nicht siehst). Das ist natürlich keine besonders tolle Option. Da kannst du alternativ nur noch die Chemiefabrik komplett neu schreiben und den Herstellungsprozess über Timer scripten.

> "AlchemProcessTime"


Das wird wahrscheinlich für die Alchemie-Zerlegung im Fantasy-Pack gebraucht.
Parent - By Serpens66 (More than 200 posts.) Date 17.09.2014 10:33
danke and dich und Zapper =) es klappt aufjedenfall :)

Hab das grad mal mit dem Flint getestet und natürlich ist es nicht so gut, da dem Flint dann eine Masse von z.b 1000 zu geben, allein weil dann Loren kaum zu bewegen sind, die sowas enthalten :D
Aber glücklicherweise habe ich für die meisten Dinge einen eigenen Prozess erschaffen, sodass ich nur die Masse des Prozesses hoch setzen muss, welches keinerlei Auswirkungen aufs Spiel selbst hat, also Problem gelöst =)

Der Gedanke dahinter war, dass mein radioaktives Plutunium nun in mehreren Schritten wieder zu ungefährlichem Uran umgewandelt werden kann. Dies soll natürlich etwas länger als 1 sekunde dauern (masse war 1). Leider wird mit meinem jetzigen Script das Plutonium am Anfang des Vorgangs vernichtet und am Ende entsteht das neue Produkt.
Ich möchte aber, dass das Plutonium auch erst am Ende vernichtet wird, damit die Clonks während der Arbeitszeit noch Schaden bekommen. Das time ich dann so, dass es möglich, aber schwer ist, es umzuwandeln, ohne zu sterben ^^

Dieses skript hab ich aus dem Erweiterungspack und an meine Bedürfnisse angepasst. Die Ausgangsstoffe werden durch die DefCore Components geregelt:

/*-- Uran aus Plutonium1 --*/

/#strict

protected func Initialize()
{
  ScheduleCall(this(),"Splitting",2);
}

private func Splitting()
{
  Enter(Contained(),CreateObject(PLU1,0,0,GetOwner()));
  RemoveObject(0,1);
}

public func IsChemicalProduct() { return(1); }
func IsAlchemContainer() { return(true); }


wie kann ich das umändern, sodass der Ausgangsstoff erst am Ende des Prozesses vernichtet wird?
Ach und was heißt eig "IsAlchemContainer" ? Ist das evtl auch fürs Fantasypack?
Up Topic Deutsch / Hilfestellung / [Gelöst] Produktionszeit ändern

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill