Mod-Tagebuch

Allgemeine Diskussion und (Mod-)Support zu Silver Style's The Fall - Last Days of Gaia.

Moderators: Newsposter, Global Moderator, Zugriff Intern, Moderator

User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Re: Mod-Tagebuch

Post by Torka »

Und wenn sie das nicht mehr finden sollten wäre evtl. ein temporäres Auferstehen des alten silverstyle-Forums nice - so das wir die Modding-relevanten Themen hierher migrieren können.
Das wäre natürlich echt spitze, wenn man an die Moddingthreads herankommt und sie wieder online stellen würde. Kenne ja das Forum nur vom Hörensagen. Die Infos wären sicher hilfreich um die Welt von "The Fall" zu erweitern. Finde es immer sehr schade, das nach der Handlung so eine virtuelle Welt brach liegt. Das Addon "Mutant City" hätte sicher eine gute Chance gehabt weitere witzige Handlunsstränge zu verflechten und neue Abenteuer in den Wastelands zu eröffnen.
Ich hoffe aber überhaupt erst einmal auf eine Antwort vom Team.  
Last edited by Torka on Fri Aug 27, 2010 3:10 am, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Lexx
Administrator
Posts: 27348
Joined: Sat Dec 10, 2005 6:27 pm

Re: Mod-Tagebuch

Post by Lexx »

Naja, so viele Informationen gab es im Forum auch nicht. Lediglich drei oder vier Threads wären noch interessant, wenn ich mich richtig erinnere. Unter anderem der, in dem beschrieben wurde, wie die Minimap generiert wird, etc. Der Rest ist (zumindest mir) mehr oder weniger bekannt. Abgesehen von den Problemen mit dem Hinzufügen eines neuen Ortes und dem korrekten Anzeigen dessen Name im Quest Log natürlich.....
only when you no-life you can exist forever, because what does not live cannot die
User avatar
Tyler
Bunkerbewohner
Posts: 12083
Joined: Sun Mar 11, 2007 9:46 pm
Location: Bremen

Re: Mod-Tagebuch

Post by Tyler »

Wolna muss wieder ran. Der kann dann das ganze russische Communityzeug übersetzen.^^
"Soviet radiation is the best radiation in the world."
- Artur Korneyev

First rule of gun safety: Have fun
User avatar
Lexx
Administrator
Posts: 27348
Joined: Sat Dec 10, 2005 6:27 pm

Re: Mod-Tagebuch

Post by Lexx »

lol. Der Witz war gut. :>
only when you no-life you can exist forever, because what does not live cannot die
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Re: Mod-Tagebuch

Post by Torka »

Erst müsste Silver Style auf die Mail antworten. Mal schauen ob sie Interesse zeigen? Zur Not gibt`s ja unter Kontakt ja auch noch `ne Telefonnummer oder Lexx klingelt mal an der Ladentür  ;).
Bisher haben sie sich noch nicht gemeldet, sind vielleicht auch grad im Urlaub  ;D

Für Wolna hätte ich da schon mal ne russische Seite http://fall.pro-d.ru/?map - aber sie verstehen auch englisch dort  #thumbsup.
Last edited by Torka on Sat Aug 28, 2010 1:37 pm, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Lexx
Administrator
Posts: 27348
Joined: Sat Dec 10, 2005 6:27 pm

Re: Mod-Tagebuch

Post by Lexx »

Ich wohne am anderen Ende von Berlin. Da hinzufahren wäre ein Tagesausflug.
only when you no-life you can exist forever, because what does not live cannot die
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Neue kombinierte Items - abgebrochene Flasche

Post by Torka »

Die Mitarbeiter von Silver Style haben leider noch nicht geantwortet, werde es erneut versuchen. In der Zwischenzeit habe ich etwas mit den kombierbaren Items experimentiert und poste mal den ersten Erfolg.

Im Spiel existiert als Nahkampfwaffe auch eine abgebrochene Glasflasche. Diese habe ich nur bei der Ärztin der Schatten gesehen, welche sie aber als Trichter verwendet hat. Die Idee ist aus einer leeren Flasche eine abgebrochene zu basteln - klingt einfach, war es auch.

Die leere Flasche befindet sich in scripts / itemdata / items.py Nebenbei habe ich den Stapplungswert (stacking) bei allen Items, der Munition und vielen Nahkampfwaffen einfach mal um Faktor 10 bis 100 erhöht :).

Code: Select all

create_item_type(typeid='SET_EMPTY_BOTTLE')
objects.set_attribute(object='SET_EMPTY_BOTTLE', attribute="name", value=globaltext.SET_EMPTY_BOTTLE_NAME)
objects.set_attribute(object='SET_EMPTY_BOTTLE', attribute="hint", value=globaltext.SET_EMPTY_BOTTLE_HINT)
objects.set_attribute(object='SET_EMPTY_BOTTLE', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_EMPTY_BOTTLE')
objects.set_attribute(object='SET_EMPTY_BOTTLE', attribute="resource3d", value='RES3D_EMPTY_BOTTLE')
objects.set_attribute(object='SET_EMPTY_BOTTLE', attribute="value", value=1.0)
objects.set_attribute(object='SET_EMPTY_BOTTLE', attribute="weight", value=0.3)
objects.set_attribute(object='SET_EMPTY_BOTTLE', attribute="stacking", value=100)
objects.set_attribute(object='SET_EMPTY_BOTTLE', attribute="occupied_slots", value=["left_hand","right_hand"])
Die abgebrochene Flasche als Waffe befindet sich in scripts / itemdata / weapons.py

Code: Select all

create_weapon_type(typeid='SET_BROKEN_OFF_BOTTLE')
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="name", value=globaltext.SET_BROKEN_OFF_BOTTLE_NAME)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="hint", value=globaltext.SET_BROKEN_OFF_BOTTLE_HINT)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_BROKEN_OFF_BOTTLE')
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="resource3d", value='RES3D_BROKEN_OFF_BOTTLE')
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="value", value=0.00)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="weight", value=0.10)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="stacking", value=100)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="weapon_type", value="nahkampf")
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="hoerweite", value=2.0)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="schusspausenzeit", value=1.6)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="genauigkeit_bewegte_ziele",	value=0.6)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="genauigkeit", value=0.2)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="minimale_feuerreichweite", value=0)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="maximale_feuerreichweite", value=2)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="salvenlaenge", value=1)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="feuergeschwindigkeit", value=0.0)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="occupied_slots", value=["right_hand"])
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="fire_animation", value=FPA_CLOSE_COMBAT_BATON)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="munitionsarten", value=['SET_BROKEN_OFF_BOTTLE_PSEUDOAMMO'])
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="magazingroesse",	value=1.0)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="effects", value={"sound_shot"	: "attack_knife"})
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="illegal_bodymodes", value=["LIE","KNEEL"])
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="combine_xp", value=25)
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
	"combination_list"		:	[
								['SET_EMPTY_BOTTLE']]})
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="combine_xp", value=25)                          Man erhält 25 XP für das erste Zerschlagen der Flasche.
objects.set_attribute(object='SET_BROKEN_OFF_BOTTLE', attribute="item_combination", value={
"difficulty_assemble" :                              COMBO_EVERYBODY,                                                           Die Herstellung gelingt unabhängig vom Technikskill.
"combination_list" :  [  
                                                                                                ['SET_EMPTY_BOTTLE']]})
     In der Liste ist nur die leere Flasche.
Weitere Beispiele:

Code: Select all

"difficulty_assemble"	:	65,
Durch diese Zeile wäre die Herstellung nicht für jedermann durchführbar, sondern erst ab einem Technikskill von 65 möglich.

Code: Select all

"assemble_function"	:	"assemble_explosives",
Die Herstellung gelingt nur, wenn man über das Talent "Sprengstoffe herstellen" verfügt.



Nun stellt man sich spontan die Frage, wozu bei den ganzen Ballermännern braucht man eine abgebrochene Flasche - also in der Arena könnte ja zufällig von der Tribüne mal eine leere Flasche fallen  ;D
Last edited by Torka on Mon Sep 06, 2010 10:33 pm, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Neue Wurfwaffe - der Stein

Post by Torka »

Was wäre wohl aus der Menschheit ohne die älteste aller Fernwaffen geworden....  ??? warum den Helden von TF der einfache Stein als Wurfwaffe vorenthalten wurde und dafür solche praktischen Dartpfeile existieren, blieb mir immer ein Rätsel. Nun im Raten bin ich eher schlecht und habe den Stein einfach mal dem Inventar hinzugefügt ... zumindest in der Theorie, denn wer will schon Steine vom Händler kaufen, jener kauft dann später auch Steine im Baumarkt   :redfingr:.
Also werden auf den Karten dann halt Steine zum Auflesen zu finden sein, denn man kann sie ja nach dem Werfen wieder verwenden.

Das ursprüngliche Steinskript in scripts / itemdata / items.py mit # deaktivieren oder löschen (Backup gemacht?).

Und dazu das eingefügte Skript in scripts / itemdata / weapons.py Habe es direkt unter dem Wurfmesser plaziert.

Code: Select all

create_throw_object_type(typeid='SET_STONE')
objects.set_attribute(object='SET_STONE', attribute="name", value=globaltext.SET_STONE_NAME)
objects.set_attribute(object='SET_STONE', attribute="hint", value=globaltext.SET_STONE_HINT)
objects.set_attribute(object='SET_STONE', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_STONE')
objects.set_attribute(object='SET_STONE', attribute="resource3d", value='RES3D_STONE')
objects.set_attribute(object='SET_STONE', attribute="value", value=1.0)
objects.set_attribute(object='SET_STONE', attribute="weight", value=1.2)
objects.set_attribute(object='SET_STONE', attribute="stacking", value=500)
objects.set_attribute(object='SET_STONE', attribute="minimale_feuerreichweite", value=0)
objects.set_attribute(object='SET_STONE', attribute="maximale_feuerreichweite", value=23)
objects.set_attribute(object='SET_STONE', attribute="salvenlaenge", value=1)
objects.set_attribute(object='SET_STONE', attribute="feuergeschwindigkeit", value=0)
objects.set_attribute(object='SET_STONE', attribute="genauigkeit", value=0.6)
objects.set_attribute(object='SET_STONE', attribute="kampfwert_air", value=15.00)
objects.set_attribute(object='SET_STONE', attribute="kampfwert_armoured", value=100.00)
objects.set_attribute(object='SET_STONE', attribute="kampfwert_infantry", value=100.00)
objects.set_attribute(object='SET_STONE', attribute="munitionsarten", value=['SET_STONE_PSEUDOAMMO'])
objects.set_attribute(object='SET_STONE', attribute="fire_animation", value=FPA_THROW_KNIFE)
objects.set_attribute(object='SET_STONE', attribute="weapon_type", value="wurf")
objects.set_attribute(object='SET_STONE', attribute="magazingroesse", value=1.0)
objects.set_attribute(object='SET_STONE', attribute="hoerweite", value=0.0)
objects.set_attribute(object='SET_STONE', attribute="schusspausenzeit", value=1.5)
objects.set_attribute(object='SET_STONE', attribute="genauigkeit_bewegte_ziele", value=0.5)
objects.set_attribute(object='SET_STONE', attribute="occupied_slots", value=["throw"])

Alle Wurfwaffen haben eine Pseudomunition, welche in scripts / itemdata / ammo.py und den Schaden verursacht, sie ist Ingame nicht sichtbar, aber für den erzeugten Schaden notwendig.

Code: Select all

create_ammo_type(typeid='SET_STONE_PSEUDOAMMO')
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="name", value='None')
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="hint", value='None')
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="resourceui", value='None')
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="resource3d", value='None')
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="value", value=0.00)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="weight", value=3)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="stacking", value=1)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="wirkungsbereich", value=0.0)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="schaden_organisch_min", value=100)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="schaden_organisch_max", value=150)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="schaden_struktur_min", value=0)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="schaden_struktur_max", value=1)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="schuss", value=1)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="schussbahn", value=BALLISTIC)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="muendungsgeschwindigkeit_min",value=7)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="muendungsgeschwindigkeit_max",value=7)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="durchschlag", 				 value=20)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="hit_chance_factor", value=1.0)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="fire_range_factor", value=1.0)
objects.set_attribute(object='SET_STONE_PSEUDOAMMO', attribute="weapon_types", value=[])
Einzigstes Manko, der Stein ist leider nicht in der Hand sichtbar, aber in der Wurfbahn schon  - Willkommen in der Steinzeit :D.
Last edited by Torka on Mon Sep 06, 2010 2:40 am, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Bolzen und Armbrust selbst herstellen

Post by Torka »

Das es im Spiel eine Armbrust gibt ist eine feine Sache, noch besser wäre es, wenn es auch mehr Bolzen dafür geben würde. Die Ödnis ist ja voll von Zivilisationsschrott, warum also aus den alten Eisenstangen nicht selbst Bolzen feilen  ;).

In der Datei scripts / itemdata / ammo.py einfach folgende Zeilen einfügen:

Code: Select all

create_ammo_type(typeid='SET_SHORT_IRON_ROD')
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="name", value=globaltext.SET_SHORT_IRON_ROD_NAME)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="hint", value=globaltext.SET_SHORT_IRON_ROD_HINT)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_RUSTY_IRON_ROD')
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="resource3d", value='RES3D_RUSTY_IRON_ROD')
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="value", value=1.00)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="weight", value=0.50)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="stacking", value=100)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="wirkungsbereich", value=0.00)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="schaden_organisch_min", value=22)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="schaden_organisch_max", value=25)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="schaden_struktur_min", value=0)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="schaden_struktur_max", value=4)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="schuss", value=5)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="schussbahn", value=LINEAR)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="muendungsgeschwindigkeit_min",value=200)## !! >>
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="muendungsgeschwindigkeit_max",value=200)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="kaliber", 					 value=globaltext.CALIBER_BOLT)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="durchschlag", 				 value=20)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="hit_chance_factor", value=1.0)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="fire_range_factor", value=1.0)
objects.set_attribute(object='SET_SHORT_IRON_ROD', attribute="weapon_types", value=[])

create_ammo_type(typeid='SET_AMMOPACK_BOLT')
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="name", value=globaltext.SET_AMMOPACK_BOLT_NAME)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="hint", value=globaltext.SET_AMMOPACK_BOLT_HINT)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="resourceui", value='RES_ITEM65X32_AMMOPACK_BOLT')
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="resource3d", value='RES3D_AMMOPACK_BOLT')
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="value", value=2.00)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="weight", value=0.20)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="stacking", value=100)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="wirkungsbereich", value=0.00)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="schaden_organisch_min", value=22)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="schaden_organisch_max", value=25)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="schaden_struktur_min", value=0)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="schaden_struktur_max", value=4)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="schuss", value=5)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="schussbahn", value=LINEAR)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="muendungsgeschwindigkeit_min",value=200)## !! >>
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="muendungsgeschwindigkeit_max",value=200)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="kaliber", 					 value=globaltext.CALIBER_BOLT)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="durchschlag", 				 value=20)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="hit_chance_factor", value=1.0)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="fire_range_factor", value=1.0)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="weapon_types", value=[])
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="combine_xp", value=75)
objects.set_attribute(object='SET_AMMOPACK_BOLT', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
	"assemble_function"		:	"assemble_dumdum_munition",
	"combination_list"		:	[['SET_RASP','SET_SHORT_IRON_ROD']]})
Die kurze Eisenstange sollte dann noch als Name und Hint in scripts / globaltext / german / german.py wie folgend definiert werden:

Code: Select all

add_global_text(id='SET_SHORT_IRON_ROD_NAME', text='kurze Eisenstange')
add_global_text(id='SET_SHORT_IRON_ROD_HINT', text='kurze Eisenstange')

Nun kann man mit dem Talent "Munition  manipulieren" und einer Feile aus kurzen Eisenstangen selbst Bolzen herstellen. Die Eistenstangen müssten dann an alten Wehrzäunen oder Ruinen, Schrottplätzen zu finden sein.
Ein paar Erfahrungspunkte bekommt man bei der ersten Bolzenanfertigung.

Bei den vielen Ersatzteilen könnte man sich ja dann auch eine Armbrust selber basteln und so in der scripts / itemdata / weapons.py das Armbrustskript verlängern:

Code: Select all

create_weapon_type(typeid='SET_CROSSBOW')
objects.set_attribute(object='SET_CROSSBOW', attribute="name", value=globaltext.SET_CROSSBOW_NAME)
objects.set_attribute(object='SET_CROSSBOW', attribute="hint", value=globaltext.SET_CROSSBOW_HINT)
objects.set_attribute(object='SET_CROSSBOW', attribute="resourceui", value='RES_ITEM65X32_WEAPON_CROSSBOW')
objects.set_attribute(object='SET_CROSSBOW', attribute="resource3d", value='RES3D_CROSSBOW')
objects.set_attribute(object='SET_CROSSBOW', attribute="value", value=60.00)
objects.set_attribute(object='SET_CROSSBOW', attribute="weight", value=4.0)
objects.set_attribute(object='SET_CROSSBOW', attribute="stacking", value=1)
objects.set_attribute(object='SET_CROSSBOW', attribute="minimale_feuerreichweite", value=0)
objects.set_attribute(object='SET_CROSSBOW', attribute="maximale_feuerreichweite", value=33)
objects.set_attribute(object='SET_CROSSBOW', attribute="salvenlaenge", value=1)
objects.set_attribute(object='SET_CROSSBOW', attribute="feuergeschwindigkeit", value=0.00)
objects.set_attribute(object='SET_CROSSBOW', attribute="genauigkeit", value=1.00)
objects.set_attribute(object='SET_CROSSBOW', attribute="kampfwert_air", value=0.00)
objects.set_attribute(object='SET_CROSSBOW', attribute="kampfwert_armoured", value=150.00)
objects.set_attribute(object='SET_CROSSBOW', attribute="kampfwert_infantry", value=150.00)
objects.set_attribute(object='SET_CROSSBOW', attribute="munitionsarten", value=['SET_AMMOPACK_BOLT'])
objects.set_attribute(object='SET_CROSSBOW', attribute="fire_animation", value=FPA_SNIPER_SINGLE)
objects.set_attribute(object='SET_CROSSBOW', attribute="weapon_type", value="sniper")
objects.set_attribute(object='SET_CROSSBOW', attribute="magazingroesse", 				value=1.0)
objects.set_attribute(object='SET_CROSSBOW', attribute="hoerweite", 					value=1.0)
objects.set_attribute(object='SET_CROSSBOW', attribute="schusspausenzeit", 			value=5.2)
objects.set_attribute(object='SET_CROSSBOW', attribute="genauigkeit_bewegte_ziele",	value=0.6)
objects.set_attribute(object='SET_CROSSBOW', attribute="blockadewahrscheinlichkeit",	value=5.0)
objects.set_attribute(object='SET_CROSSBOW', attribute="occupied_slots", value=["left_hand","right_hand"])
objects.set_attribute(object='SET_CROSSBOW', attribute="effects", value={
		"sound_shot"	: "shot_crossbow",
		"sound_unload"	: "crossbow_discharge",
		"sound_reload"	: "crossbow_charge"})
objects.set_attribute(object='SET_CROSSBOW', attribute="combine_xp", value=125)
objects.set_attribute(object='SET_CROSSBOW', attribute="item_combination",	value={
	"difficulty_assemble"	:	65,
        "assemble_function"		:	"assemble_parlor_game",
	"combination_list"		:	[
								['SET_FLAT_SPRING', 'SET_CLUB', 'SET_LONG_LEATHER_STRING', 'SET_REEL_OF_STEEL_WIRE','SET_KNIFE']]})
Aus einer Blattfeder, einer Holzkeule, einer langen Lederschnur und Stahldraht entsteht mit Hilfe eines Messers nun ab einem Technikwert von 65 eine Armbrust, nebenbei gibt`s für`s erste Mal 125 XP.
Last edited by Torka on Tue Sep 07, 2010 1:13 am, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Landminen

Post by Torka »

Wie in den "Geschichten aus den Wastelands" schon angekündigt, kann man nun nicht nur die Landminen nutzen, sondern sie auch selbst bauen. Durch das Talent "Sprengstoffe bauen" kann man aus den Bestandteilen: Blechdose, Schwarzpulver, kurze Nägel und einem Zünder die Minen basteln. Dadurch ergeben sich neue taktische Möglichkeiten, wie z.B. eine Minensperre oder ein Hinterhalt.

In der Datei scripts / itemdata / weapons.py einfach folgende Zeilen einfügen:

Code: Select all

create_item_type(typeid='SET_LANDMINE')
objects.set_attribute(object='SET_LANDMINE', attribute="name", value=globaltext.SET_LANDMINE_NAME)
objects.set_attribute(object='SET_LANDMINE', attribute="hint", value=globaltext.SET_LANDMINE_HINT)
objects.set_attribute(object='SET_LANDMINE', attribute="resourceui", value='RES_ITEM65X32_EXPLOSIVE_LANDMINE')
objects.set_attribute(object='SET_LANDMINE', attribute="resource3d", value='RES3D_LANDMINE')
objects.set_attribute(object='SET_LANDMINE', attribute="value", value=10.00)
objects.set_attribute(object='SET_LANDMINE', attribute="weight", value=1.1)
objects.set_attribute(object='SET_LANDMINE', attribute="stacking", value=500)
objects.set_attribute(object='SET_LANDMINE', attribute="weapon_type", value="explosiv")
objects.set_attribute(object='SET_LANDMINE', attribute="magazingroesse",	value=1.0)
objects.set_attribute(object='SET_LANDMINE', attribute="hoerweite", 		value=40.0)
objects.set_attribute(object='SET_LANDMINE', attribute="minimale_feuerreichweite", value=0.0)
objects.set_attribute(object='SET_LANDMINE', attribute="maximale_feuerreichweite", value=0.0)
objects.set_attribute(object='SET_LANDMINE', attribute="salvenlaenge", 			 value=1)
objects.set_attribute(object='SET_LANDMINE', attribute="feuergeschwindigkeit",	 value=0.0)
objects.set_attribute(object='SET_LANDMINE', attribute="bomb_type",	 value="mine")
objects.set_attribute(object='SET_LANDMINE', attribute="wirkungsbereich", value=15)
objects.set_attribute(object='SET_LANDMINE', attribute="durchschlag", value=200)
objects.set_attribute(object='SET_LANDMINE', attribute="schaden_organisch_min", value=250)
objects.set_attribute(object='SET_LANDMINE', attribute="schaden_organisch_max", value=300)
objects.set_attribute(object='SET_LANDMINE', attribute="schaden_struktur_min", value=50)
objects.set_attribute(object='SET_LANDMINE', attribute="schaden_struktur_max", value=60)
objects.set_attribute(object='SET_LANDMINE', attribute="targets", value=["character", "animal"])
objects.set_attribute(object='SET_LANDMINE', attribute="detection_range", value=4.0)
#objects.set_attribute(object='SET_LANDMINE', attribute="not_tradable", value=True)
objects.set_attribute(object='SET_LANDMINE', attribute="combine_xp", value=100)
objects.set_attribute(object='SET_LANDMINE', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
	"assemble_function"		:	"assemble_explosives",
	"combination_list"		:	[
								['SET_TIN_CAN', 'SET_GUN_POWDER', 'SET_SHORT_NAILS', 'SET_FUSE']]})
Last edited by Torka on Tue Sep 07, 2010 9:41 pm, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Lederwaren

Post by Torka »

Falls die Helden in der Ödnis nicht gerade an Bolzen feilen oder mit Minen was in die Luft jagen, können sie sich auch fast friedlich nützlich machen. Mit zunehmenden Survivalskill steigt ja bekanntlich die Jagdausbeute - erst in der Fleischmenge, später kommen Felle, Krallen und Zähne hinzu. Warum sollen diese Rohmaterialien nur für das Kunsthandwerk (Ketten usw.) vorbehalten sein, viel näher liegt doch die Felle zu gerben und Leder für Kleidung und Schuhe herzustellen.

Die erste Stufe vom Fell zum gegerbten Leder schaut im Skript scripts / itemdata / items.py so aus:

Code: Select all

create_item_type(typeid='SET_HYENA_PELT')
objects.set_attribute(object='SET_HYENA_PELT', attribute="name", value=globaltext.SET_HYENA_PELT_NAME)
objects.set_attribute(object='SET_HYENA_PELT', attribute="hint", value=globaltext.SET_HYENA_PELT_HINT)
objects.set_attribute(object='SET_HYENA_PELT', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_HYENA_PELT')
objects.set_attribute(object='SET_HYENA_PELT', attribute="resource3d", value='RES3D_HYENA_PELT')
objects.set_attribute(object='SET_HYENA_PELT', attribute="value", value=35.00)
objects.set_attribute(object='SET_HYENA_PELT', attribute="weight", value=4.00)
objects.set_attribute(object='SET_HYENA_PELT', attribute="stacking", value=15)
objects.set_attribute(object='SET_HYENA_PELT', attribute="combine_xp", value=500)
objects.set_attribute(object='SET_HYENA_PELT', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_parlor_game",
	"combination_list"		:	[['SET_KNIFE', 'SET_BEAR_SKIN'],
							['SET_KNIFE', 'SET_AMMONIUM_NITRATE', 'SET_SOAP','SET_TIGER_FUR'],
							['SET_KNIFE', 'SET_AMMONIUM_NITRATE', 'SET_SOAP','SET_WOLF_PELT'],
							['SET_KNIFE', 'SET_AMMONIUM_NITRATE', 'SET_SOAP','SET_HORSE_SKIN'],
                                                        ['SET_KNIFE', 'SET_AMMONIUM_NITRATE', 'SET_SOAP','SET_DEER_SKIN'],
                                                        ['SET_KNIFE', 'SET_AMMONIUM_NITRATE', 'SET_SOAP','SET_ANTELOPE_PELT'],
                                                        ['SET_KNIFE', 'SET_AMMONIUM_NITRATE', 'SET_SOAP','SET_WILD_DOG_PELT'],
                                                        ['SET_KNIFE', 'SET_AMMONIUM_NITRATE', 'SET_SOAP','SET_BISON_SKIN'],
                                                        ['SET_KNIFE', 'SET_AMMONIUM_NITRATE', 'SET_SOAP','SET_PIG_SKIN'],
							['SET_KNIFE', 'SET_AMMONIUM_NITRATE', 'SET_SOAP','SET_COW_SKIN']]})
Im Spiel gibt es ein Hyänenfell, da es aber ingame nie Hyänen gab, habe ich mir die Textur für das gegerbte Leder gekrallt und in der  scripts / globaltext / german / german.py den Namen und Hint umgenannt:

Code: Select all

add_global_text(id='SET_HYENA_PELT_NAME', text='Gegerbtes Leder')
add_global_text(id='SET_HYENA_PELT_HINT', text='Gegerbtes Leder')
Zum Gerben werden dann noch folgende Zutaten und Werkzeuge gebraucht:
- ein Messer zum Abschaben des Fettes, der Fleischreste und Haare
- das Ammoniumnitrat als Beizmittel
- die Seife zum Säubern
- ein Fell (egal ob Hirsch, Wolf, Bär, Bison, Pferd, Schwein, Wildhund, Puma oder Antilope)

Das nun gegerbte Leder kann nun weiter zu Lederkleidung und Schuhen verarbeitet werden. Doch für die Herstellung wären auch Lederschnüre ganz hilfreich.

Aus den Pfoten oder bekrallten Vorderläufen der Raubtiere könnte man die Sehnen oder die Haut zu kurzen und langen Lederschnüren verarbeiten.
Die beiden Skripte in scripts / itemdata / items.py wie beschrieben verlängern.

Lange Schnüre aus den Pfoten von Bären, Berglöwen oder Wölfen:

Code: Select all

create_item_type(typeid='SET_LONG_LEATHER_STRING')
objects.set_attribute(object='SET_LONG_LEATHER_STRING', attribute="name", value=globaltext.SET_LONG_LEATHER_STRING_NAME)
objects.set_attribute(object='SET_LONG_LEATHER_STRING', attribute="hint", value=globaltext.SET_LONG_LEATHER_STRING_HINT)
objects.set_attribute(object='SET_LONG_LEATHER_STRING', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_LONG_LEATHER_STRING')
objects.set_attribute(object='SET_LONG_LEATHER_STRING', attribute="resource3d", value='RES3D_LONG_LEATHER_STRING')
objects.set_attribute(object='SET_LONG_LEATHER_STRING', attribute="value", value=1.0)
objects.set_attribute(object='SET_LONG_LEATHER_STRING', attribute="weight", value=0.3)
objects.set_attribute(object='SET_LONG_LEATHER_STRING', attribute="stacking", value=100)
objects.set_attribute(object='SET_LONG_LEATHER_STRING', attribute="combine_xp", value=50)
objects.set_attribute(object='SET_LONG_LEATHER_STRING', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_parlor_game",
	"combination_list"		:	[['SET_KNIFE', 'SET_BEAR_CLAW'],
							['SET_KNIFE', 'SET_TIGER_CLAW'],
							['SET_KNIFE', 'SET_WOLF_CLAW']]})
Kurze Schnüre aus den Pfoten von Wildhunden:

Code: Select all

create_item_type(typeid='SET_SHORT_LEATHER_STRING')
objects.set_attribute(object='SET_SHORT_LEATHER_STRING', attribute="name", value=globaltext.SET_SHORT_LEATHER_STRING_NAME)
objects.set_attribute(object='SET_SHORT_LEATHER_STRING', attribute="hint", value=globaltext.SET_SHORT_LEATHER_STRING_HINT)
objects.set_attribute(object='SET_SHORT_LEATHER_STRING', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_SHORT_LEATHER_STRING')
objects.set_attribute(object='SET_SHORT_LEATHER_STRING', attribute="resource3d", value='RES3D_SHORT_LEATHER_STRING')
objects.set_attribute(object='SET_SHORT_LEATHER_STRING', attribute="value", value=1.0)
objects.set_attribute(object='SET_SHORT_LEATHER_STRING', attribute="weight", value=0.01)
objects.set_attribute(object='SET_SHORT_LEATHER_STRING', attribute="stacking", value=100)
objects.set_attribute(object='SET_SHORT_LEATHER_STRING', attribute="combine_xp", value=50)
objects.set_attribute(object='SET_SHORT_LEATHER_STRING', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_parlor_game",
	"combination_list"		:	[['SET_KNIFE', 'SET_WILD_DOG_CLAW']]})
Die Namen und Hints werden in scripts / globaltext / german / german.py wie folgend verändert:

Code: Select all

add_global_text(id='SET_BEAR_CLAW_NAME', text='Bärenpfoten mit Krallen')
add_global_text(id='SET_BEAR_CLAW_HINT', text='Bärenpfoten mit Krallen')
add_global_text(id='SET_TIGER_CLAW_NAME', text='Berglöwenpfoten mit Krallen')
add_global_text(id='SET_TIGER_CLAW_HINT', text='Berglöwenpfoten mit Krallen')
add_global_text(id='SET_WOLF_CLAW_NAME', text='Wolfspfoten mit Krallen')
add_global_text(id='SET_WOLF_CLAW_HINT', text='Wolfspfoten mit Krallen')
add_global_text(id='SET_WILD_DOG_CLAW_NAME', text='Wildhundpfoten mit Krallen')
add_global_text(id='SET_WILD_DOG_CLAW_HINT', text='Wildhundpfoten mit Krallen')
Last edited by Torka on Thu Sep 09, 2010 5:14 pm, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Lederkleidung

Post by Torka »

Gegerbtes Leder + Lange Lederschnur + Messer  =  Dünne Lederkleidung
Das Skript kann in scripts / itemdata / items.py wie folgt verändert werden:
[spoiler]

Code: Select all

create_item_type(typeid='SET_INTRO_CLOTHES')
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="name", value=globaltext.SET_INTRO_CLOTHES_NAME)
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="hint", value=globaltext.SET_INTRO_CLOTHES_HINT)
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_INTRO_CLOTHES')
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="resource3d", value='RES3D_INTRO_CLOTHES')
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="value", value=25.00)
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="weight", value=2.50)
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="stacking", value=6)
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="armor", value=1)
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="occupied_slots", value=["clothes"])
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="not_tradable", value=True)
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="combine_xp", value=50)
objects.set_attribute(object='SET_INTRO_CLOTHES', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_parlor_game",
	"combination_list"		:	[['SET_KNIFE', 'SET_HYENA_PELT', 'SET_LONG_LEATHER_STRING']]})
[/spoiler]


Gegerbtes Leder + Lange Lederschnur + Nieten + Messer  = Lederkleidung
Das Skript kann in scripts / itemdata / items.py wie folgt verändert werden:
[spoiler]

Code: Select all

create_item_type(typeid='SET_LEATHER_CLOTHES')
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="name", value=globaltext.SET_LEATHER_CLOTHES_NAME)
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="hint", value=globaltext.SET_LEATHER_CLOTHES_HINT)
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_LEATHER_CLOTHES')
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="resource3d", value='RES3D_LEATHER_CLOTHES')
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="value", value=15.00)
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="weight", value=2.0)
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="stacking", value=6)
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="armor", value=4)
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="occupied_slots", value=["clothes"])
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="combine_xp", value=50)
objects.set_attribute(object='SET_LEATHER_CLOTHES', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_parlor_game",
	"combination_list"		:	[['SET_KNIFE', 'SET_HYENA_PELT', 'SET_LONG_LEATHER_STRING', 'SET_RIVETS']]})
[/spoiler]


Gegerbtes Leder + Kurze Lederschnur + Messer  =  Lederhandschuhe
Das Skript kann in scripts / itemdata / items.py wie folgt verändert werden:
[spoiler]

Code: Select all

create_item_type(typeid='SET_LEATHER_GLOVES')
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="name", value=globaltext.SET_LEATHER_GLOVES_NAME)
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="hint", value=globaltext.SET_LEATHER_GLOVES_HINT)
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_LEATHER_GLOVES')
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="resource3d", value='RES3D_LEATHER_GLOVES')
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="value", value=15.00)
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="weight", value=0.20)
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="stacking", value=6)
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="armor", value=1)
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="occupied_slots", value=["gloves"])
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="combine_xp", value=25)
objects.set_attribute(object='SET_LEATHER_GLOVES', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_parlor_game",
	"combination_list"		:	[['SET_KNIFE', 'SET_HYENA_PELT', 'SET_SHORT_LEATHER_STRING']]})
[/spoiler]


Gegerbtes Leder + Kurze Lederschnur + Nieten + Messer  =  Lederschutzkappe
Das Skript kann in scripts / itemdata / items.py wie folgt verändert werden:
[spoiler]

Code: Select all

create_item_type(typeid='SET_LEATHER_CAP')
objects.set_attribute(object='SET_LEATHER_CAP', attribute="name", value=globaltext.SET_LEATHER_CAP_NAME)
objects.set_attribute(object='SET_LEATHER_CAP', attribute="hint", value=globaltext.SET_LEATHER_CAP_HINT)
objects.set_attribute(object='SET_LEATHER_CAP', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_LEATHER_CAP')
objects.set_attribute(object='SET_LEATHER_CAP', attribute="resource3d", value='RES3D_LEATHER_CAP')
objects.set_attribute(object='SET_LEATHER_CAP', attribute="value", value=7.00)
objects.set_attribute(object='SET_LEATHER_CAP', attribute="weight", value=0.40)
objects.set_attribute(object='SET_LEATHER_CAP', attribute="stacking", value=6)
objects.set_attribute(object='SET_LEATHER_CAP', attribute="armor", value=2)
objects.set_attribute(object='SET_LEATHER_CAP', attribute="occupied_slots", value=["helm"])
objects.set_attribute(object='SET_LEATHER_CAP', attribute="combine_xp", value=30)
objects.set_attribute(object='SET_LEATHER_CAP', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_parlor_game",
	"combination_list"		:	[['SET_KNIFE', 'SET_HYENA_PELT', 'SET_SHORT_LEATHER_STRING', 'SET_RIVETS']]})
[/spoiler]


Gegerbtes Leder + Kurze Lederschnur + Nieten + Hammer  =  Lederstiefel
Das Skript kann in scripts / itemdata / items.py wie folgt verändert werden:
[spoiler]

Code: Select all

create_item_type(typeid='SET_LEATHER_BOOTS')
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="name", value=globaltext.SET_LEATHER_BOOTS_NAME)
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="hint", value=globaltext.SET_LEATHER_BOOTS_HINT)
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_LEATHER_BOOTS')
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="resource3d", value='RES3D_LEATHER_BOOTS')
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="value", value=25.00)
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="weight", value=1.5)
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="stacking", value=6)
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="armor", value=2)
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="occupied_slots", value=["boots"])
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="combine_xp", value=60)
objects.set_attribute(object='SET_LEATHER_BOOTS', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_plate_armor",
	"combination_list"		:	[['SET_SLEDGE_HAMMER', 'SET_HYENA_PELT', 'SET_SHORT_LEATHER_STRING', 'SET_RIVETS']]})
[/spoiler]


Gegerbtes Leder + Kurze Lederschnur + Nieten + Stahlplatten + Hammer  =  Stahlkappenstiefel
Das Skript kann in scripts / itemdata / items.py wie folgt verändert werden:
[spoiler]

Code: Select all

create_item_type(typeid='SET_STEEL_CLAD_BOOTS')
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="name", value=globaltext.SET_STEEL_CLAD_BOOTS_NAME)
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="hint", value=globaltext.SET_STEEL_CLAD_BOOTS_HINT)
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_STEEL_CLAD_BOOTS')
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="resource3d", value='RES3D_STEEL_CLAD_BOOTS')
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="value", value=50.00)
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="weight", value=2.00)
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="stacking", value=6)
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="armor", value=4)
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="occupied_slots", value=["boots"])
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="combine_xp", value=75)
objects.set_attribute(object='SET_STEEL_CLAD_BOOTS', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_plate_armor",
	"combination_list"		:	[['SET_SLEDGE_HAMMER', 'SET_HYENA_PELT', 'SET_SHORT_LEATHER_STRING', 'SET_RIVETS', 'SET_STEEL_PLATES']]})
[/spoiler]


Auf diesen Skripten aufbauend kann man dann folgende Ideen umsetzten:

Eisenplatten + Hammer  =  einfacher Helm
Stahlplatten + Hammer  =  Stahlhelm
Last edited by Torka on Fri Sep 10, 2010 12:08 am, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
le Chew
Atomsprengkopf
Posts: 2826
Joined: Mon May 14, 2007 1:35 pm
Location: Bärlin
Contact:

Re: Mod-Tagebuch

Post by le Chew »

Hehe, er wütet wieder  :D

Da sind schicke Sachen dabei - ich überlege gerade ob 2 Dinge sinnvoll wären:

1. Ein "Übersichtsthread" mit Linklisten a la "Dünne Lederrüstung" -> Link zum Codeschnippsel
2. Ein (privates) SVN-Repository der Original-"The Fall"-Pythonscripte mit dem wir dann diffs anfertigen - so könnte jeder seine lokalen Scripte ganz einfach patchen und hätte deine Änderungen :)

(Privates SVN deswegen weil ich denke ein Öffentliches würde evtl. Probleme machen wegen Lizenzen etc...)

Weiter so, du aktivstes deutsches The-Fall-Modding-"Team" du  :s000:

cheers,
chewie
Last edited by le Chew on Thu Sep 09, 2010 8:19 pm, edited 1 time in total.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Re: Mod-Tagebuch

Post by Torka »

Danke chewie  :D
1. Ein "Übersichtsthread" mit Linklisten a la "Dünne Lederrüstung" -> Link zum Codeschnippsel
2. Ein (privates) SVN-Repository der Original-"The Fall"-Pythonscripte mit dem wir dann diffs anfertigen - so könnte jeder seine lokalen Scripte ganz einfach patchen und hätte deine Änderungen
Die Itemliste hat hat sich gerade ein wenig verselbständigt und die Übersicht leidet - sollten eigentlich nur Beispiele werden *g* - aber der Ideenfluß war zu schnell  ;D.
Wie könnte so ein SVN ausschauen, habe da leider gar keinen Plan von, außer das die Skriptteile miteinander verglichen werden.
Wenn die Zeit und Motivation reichen, soll ja aus der Iddensammlung des Modtagebuches eine kleine Mod entstehen - sowas wie "TF-Extended" - mal schauen.   

Über Urheberrechte habe ich mir auch schon Gedanken gemacht, deswegen stehen als Quellen immer die Skriptpfade da. Da es ja auch Modtool und den Editor + die Anleitungen zum Modden gibt hoffe ich mal nicht Probleme zu bekommen. Anderenfalls werden sie Skriptteile halt wieder entfernt. Ich habe auch schon zwei Emails an Silver Style geschrieben, leider haben sie noch nicht geantwortet.
Last edited by Torka on Thu Sep 09, 2010 11:24 pm, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Werkzeug selbst definieren

Post by Torka »

Wie man selbst Werkzeuge definiert, zeigt folgendes Skript (z.B.: Zange oder Hammer, welche nach dem Benutzen wieder im Inventar zur Verfügung stehen). Im Beispiel wird unter scripts / combos.py eine Backform für das spätere Brotbacken  :D beschrieben:

Code: Select all

def assemble_cake_tin(character_id, items, item):
	"""Creates cake tin.

Parameters:
        character_id - Id of owner of items.
        items        - List of id of items to combine.
        item         - The item_type of new item.
"""
	for act_item in items:
		if (objects.get_attribute(act_item, "typeid")!="SET_CAKE_TIN"):
			objects.remove_item_from_inventory(character_id, act_item)
	
	
	objects.create_item_in_inventory(object=character_id, equipment=item)
	return True
In scripts / itemdata / items.py ist dann unter dem Brot diese Funktion wieder zu finden:

Code: Select all

create_item_type(typeid='SET_BREAD')
objects.set_attribute(object='SET_BREAD', attribute="name", value=globaltext.SET_BREAD_NAME)
objects.set_attribute(object='SET_BREAD', attribute="hint", value=globaltext.SET_BREAD_HINT)
objects.set_attribute(object='SET_BREAD', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_BREAD')
objects.set_attribute(object='SET_BREAD', attribute="resource3d", value='RES3D_BREAD')
objects.set_attribute(object='SET_BREAD', attribute="value", value=4.0)
objects.set_attribute(object='SET_BREAD', attribute="weight", value=0.5)
objects.set_attribute(object='SET_BREAD', attribute="stacking", value=500)
objects.set_attribute(object='SET_BREAD', attribute="le_recovery", value=8)
objects.set_attribute(object='SET_BREAD', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
        "assemble_function"		:	"assemble_cake_tin",
	"combination_list"		:	[['SET_CAKE_TIN', 'SET_SUGAR','SET_WATER_SKIN']]})
Nun ist es möglich aus Wasser, Mehl (ursprünglich die orginale Zuckertüte) und der Backform (eigentlich die Kuchenform) das erste eigene Brot zu backen.  ;)

Alles gut und schön, an Wasser im Ödland zu kommen ist ja schon gut möglich, doch wo findet man Mehl?

Option A: Wo eine Windmühle steht, könnte der Müller nicht weit sein und wo Säcke liegen, könnte auch Mehl drin sein  ;D. Es wird also auf einigen Karten hinterlegt.

Option B:Selbst ist der Wasteländer, naja, fast. Da wo es Kornfelder gibt (manchmal schon abgeerntet mit Stroh) werden Roggenbündel zu finden sein, aus denen Mehl zu gewinnen ist.

Das Skript für die Verarbeitung von Rogenbündeln zu Mehl. Es ist zwar etwas mühselig mit einem Hammer die Körner zu zerstampfen, aber Not macht erfinderisch:
[spoiler]

Code: Select all

create_item_type(typeid='SET_SUGAR')
objects.set_attribute(object='SET_SUGAR', attribute="name", value=globaltext.SET_SUGAR_NAME)
objects.set_attribute(object='SET_SUGAR', attribute="hint", value=globaltext.SET_SUGAR_HINT)
objects.set_attribute(object='SET_SUGAR', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_SUGAR')
objects.set_attribute(object='SET_SUGAR', attribute="resource3d", value='RES3D_SUGAR')
objects.set_attribute(object='SET_SUGAR', attribute="value", value=2.0)
objects.set_attribute(object='SET_SUGAR', attribute="weight", value=0.5)
objects.set_attribute(object='SET_SUGAR', attribute="stacking", value=100)
objects.set_attribute(object='SET_SUGAR', attribute="combine_xp", value=100)
objects.set_attribute(object='SET_SUGAR', attribute="item_combination",	value={
	"difficulty_assemble"	:	COMBO_EVERYBODY,
	 "assemble_function"	:	"assemble_plate_armor",
	"combination_list"		:	[
								['SET_BUNCH_OF_RYE_PLANTS','SET_SLEDGE_HAMMER']]})
[/spoiler]
Last edited by Torka on Tue Oct 12, 2010 9:53 am, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Objekte des Editors als Inventaritems im Spiel definieren

Post by Torka »

Seit einiger Zeit habe ich damit experimentiert Gegenstände des Editors in nutzbare Spielobjekte um zu wandeln. Als Beispiel möchte ich das an Pilzen dokumentieren:

1. Der Name des neuen Items lautet MUSHROOMS_1 und wird wie bisher gewohnt als Objekt in scripts / itemdata / items.py definiert:
                 

Code: Select all

create_item_type(typeid='SET_MUSHROOMS_1')
objects.set_attribute(object='SET_MUSHROOMS_1', attribute="name", value=globaltext.SET_MUSHROOMS_1_NAME)
objects.set_attribute(object='SET_MUSHROOMS_1', attribute="hint", value=globaltext.SET_MUSHROOMS_1_HINT)
objects.set_attribute(object='SET_MUSHROOMS_1', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_MUSHROOMS_1')
objects.set_attribute(object='SET_MUSHROOMS_1', attribute="resource3d", value='RES3D_TRES_OBJECTS_BUILDING_MUSHROOMS_1')
objects.set_attribute(object='SET_MUSHROOMS_1', attribute="value", value=2.0)
objects.set_attribute(object='SET_MUSHROOMS_1', attribute="weight", value=0.2)
objects.set_attribute(object='SET_MUSHROOMS_1', attribute="stacking", value=10)


2. Der Namen und Hint der Pilze im Spiel werden in scripts / globaltext / german / german.py definiert:
               

Code: Select all

add_global_text(id='SET_MUSHROOMS_1_NAME', text='Champignons')
add_global_text(id='SET_MUSHROOMS_1_HINT', text='Champignons')
Dem geübten Leser wird jetzt auffallen, das es sich um Champignons handeln wird.



3. Das Inventarbild wird in der Zeile  objects.set_attribute(object='SET_MUSHROOMS_1', attribute="resourceui", value='RES_ITEM65X32_MISCITEM_MUSHROOMS_1' ) abgefragt.

Dieses gibt es in den GUI-Daten noch nicht und muss verankert werden. Dem Spiel sind im Modordner Tools beigefügt, eines davon ist das Tool guiresourcedata.exe. Dieses öffnen.
Es hat Vorteile schon vorher zu wissen, wo sich denn die GUI-Daten der Items verstecken. Häufig halten sie sich in The Fall / data / guidata / fall_items.gui auf  ;).
Die Datei öffnen und unter "Ressourcen" auf der linken Seite erscheint eine lange Liste der definierten Inventarbilder der Objekte - Pilze sind da noch nicht zu finden, müssen noch "wachsen".
In der Datenbank einfach einen neuen Eintrag erstellen (am oberen linken Rand erstes Quadratsymbol "Neue Ressource" anklicken- schau auch in die Infozeile unten)
Die Infostruktur kann man eigentlich recht analog zu den anderen Objekten erstellen. Zu jedem Eintrag auf der linken Seite in der Datenbank stehen verschiedene Informationen auf der rechten Seite.
                           
     a. die Id: von 400000 bis 400545  - ich habe einfach die 1 genommen, da es mein erstes Objekt ist

     b. Bezeichner: RES_ITEM65X32_MISCITEM_MUSHROOMS_1  - wichtig, das ist der Name auf den sich weiter oben hier in der Objektdefinition bezogen wird

     c. Es wird ein "Neuer Bereich" definiert und es öffnet sich ein Fenster, in welchem man folgende Werte einträgt:

                   Nummer: 0
                   Koordinaten des Inventarbildes auf einem PNG-Bild:  TX1:0 TY1:0 und TX2:65 TX2: 32
                   Breite: 32
                   Höhe:  65  
                   Offset XY: 0
                   Streckung XY: 1
                   Pfad: gui\gui_mission\items\b_mushrooms1.png Dieser Pfad muss auch im Eintrag der Texturbibliothek stehen.

          Am Ende des Pfades gui \ gui-mission\items\ verstecken sich insgesamt 26 Bilder im DDS Format. Jedes Bild enthält mehrere Inventarbilder,
          welches man sich mit dem Programm dxtbmpx.EXE angesehen kann und so auch eine Vorstellung bekommt, was sich  z.B. hinter den Koordinaten verbirgt.
          Im Fall der Pilze ist das aber eh rein theoretisch, da ein Inventarbild noch gar nicht existiert. 
          Es gibt im TF-Editor Pilzbilder, welche man im Ordner The Fall / gui / preview / buildings / b_mushrooms1.png.dds finden kann.
          Entweder man legt den Pfad dahin oder man kopiert das Bild nach gui \ gui-mission\items, habe der Übersicht halber letzteres getan.

      d. Nun muss das Bild nur noch in der Texturdatenbank der GUIResourceData eingebunden werden. Dazu klickt man in der Symbolleiste den Button Texturdatenbank an und es öffnet sich das Fenster der Texturbibliothek.
          Ein ähnliches Spiel wie zuvor. Ein neuer Eintrag wird erstellt und folgende Werte definiert:

                    Id: 1
                    Pfad: gui\gui_mission\items\b_mushrooms1.png (wichtig, das Bild ist im Ordner als .dds abgelegt, es wird aber auf das .png verwiesen!), Pfad aus c muss identisch sein!
                    Format: PNG
                    Höhe: 64
                    Breite: 32 (wichtig, die anderen Bilder sind ja 256x256, da sie mehrere Inventarbilder enthalten, dieses ist nur ein einzelnes deswegen 64x32)
                    Typ: Transparent
         
        Jetzt sollte das Bild verankert sein und im Spielerinventar sichtbar sichtbar sein.


4. Als nächstes wird das 3d-Modell in der Zeile objects.set_attribute(object='SET_MUSHROOMS_1', attribute="resource3d", value='RES3D_TRES_OBJECTS_BUILDING_MUSHROOMS_1') abgefragt.

In der Datei scripts / objectdata / items.py werden die 3d-Modelle der Items geladen. Da es die Pilze aber nur im Editor gibt, müssen sie unter 'RES3D_TRES_OBJECTS_BUILDING_MUSHROOMS_1' durch folgende Zeilen analog zu den anderen hinzugefügt werden:

Code: Select all

add_3d_item_data(typeid='RES3D_TRES_OBJECTS_BUILDING_MUSHROOMS_1')
objects.set_attribute(object='RES3D_TRES_OBJECTS_BUILDING_MUSHROOMS_1', attribute="diff3d_file", value="objects\\additionals\\thefall\\misc\\mushrooms1.diff3d")
objects.set_attribute(object='RES3D_TRES_OBJECTS_BUILDING_MUSHROOMS_1', attribute="states", value=['TRES_OBJECTS_BUILDING_MUSHROOMS_1'])
                       
Die 3d-Datei der Pilze im Editor findet sich ursprünglich unter The Fall / objects / buildings / mushrooms / mushrooms1.diff3d . Entweder man verlinkt direkt oder man verschiebt eine
Kopie nach The Fall / objects / additionals / thefall / misc / mushrooms1.diff3d zu den 3d-Modellen der anderen Items.


Wenn soweit alles richtig ausgeführt und alles gespeichert (Backup gemacht ?) wurde, kann man nun Pilze sammeln.  #yay (diese müßten natürlich noch in den Zonenskripten analog zu den Kräutern plaziert werden)
Image
Last edited by Torka on Tue Oct 12, 2010 9:49 pm, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Baustelle

Post by Torka »

#radi2 Baustelle #radi2
     :coffee  :para
objects.set_attribute("GANGER_1","foes",["UISPIELER"])

zone_2 / npc.py
[spoiler]

Code: Select all

def initNPCS():
	#RATSKULL_SQUAD_LEADER
	system.create_character(
		id="RATSKULL_SQUAD_LEADER",
		gender="male",
		party="RATSKULLS",
		x=432.83,
		y=668.85,
		direction=0,
		name=globaltext.NAME_RATSKULL,
		resourceui="")

 	objects.set_attribute("RATSKULL_SQUAD_LEADER", "faction", "RAT_SKULLS")
	objects.set_attribute("RATSKULL_SQUAD_LEADER", "level", 3 )
	objects.set_attributes("RATSKULL_SQUAD_LEADER",
		model="low",
		gender="male", # "female"
		skin="white", # "black"
		clothes="ratskull_bulletproof", # "ratskull",
		face="ratskull_member_0012")
	character.update_appearance("RATSKULL_SQUAD_LEADER")
	character.scale("RATSKULL_SQUAD_LEADER",1.82)
[/spoiler]

zone_2 / const.py

Code: Select all

data().ratskulls_david = 	["RATSKULL_SQUAD_LEADER", "RATSKULL_002", "RATSKULL_017"]
data().ratskulls_camp = 	["RATSKULL_006", "RATSKULL_007"]
data().ratskulls_village =	["RATSKULL_003","RATSKULL_004","RATSKULL_010", "RATSKULL_005","RATSKULL_011","RATSKULL_012", "RATSKULL_013","RATSKULL_014","RATSKULL_015", "RATSKULL_016"]
data().ratskulls = data().ratskulls_david + data().ratskulls_camp + data().ratskulls_village
zone_2 / shedules.py
[spoiler]

Code: Select all

"RATSKULL_011": ({
	S_CONDITION:lambda:data().RatskullsKonversationAktiv,
	# Konversation
	"01:30:00":{
		S_LOCATION : 1,
		S_START  :(goto(638.6,560.3)),
		S_LOOP	 :(conversate(["RATSKULL_012","RATSKULL_013","RATSKULL_014"])),
	},
	# Sitzen, warten
	"11:25:00":{
		S_LOCATION : 2,
		S_START  :(sit_down_on_ground()),
		S_LOOP	 :(sit_on_ground()),
	},
},{
	S_CONDITION: lambda: data().ratskulls_emergency_schedule, 
	"00:00:00" : {
		S_START : [goto(638.6,560.5)],
		S_LOOP  : []
	}
}),

"RATSKULL_012": ({
	S_CONDITION:lambda:data().RatskullsKonversationAktiv,
	# Konversation
	"00:15:00":{
		S_LOCATION : 1,
		S_START  :(goto(637.1,560.5)),
		S_LOOP	 :(conversate(["RATSKULL_011","RATSKULL_013","RATSKULL_014"])),
	},
	# Sitzen, warten
	"10:04:00":{
		S_LOCATION : 2,
		S_START  :(sit_down_on_ground()),
		S_LOOP	 :(sit_on_ground()),
	},
},{
	S_CONDITION: lambda: data().ratskulls_emergency_schedule, 
	"00:00:00" : {
		S_START : [goto(637.1,560.5)],
		S_LOOP  : []
	}
}),

"RATSKULL_013": ({
	S_CONDITION:lambda:data().RatskullsKonversationAktiv,
	# Konversation
	"02:01:00":{
		S_LOCATION : 1,
		S_START  :(goto(638.11,559.37)),
		S_LOOP	 :(conversate(["RATSKULL_012","RATSKULL_011","RATSKULL_014"])),
	},
	# Sitzen, warten
	"13:45:00":{
		S_LOCATION : 2,
		S_START  :(sit_down_on_ground()),
		S_LOOP	 :(sit_on_ground()),
	},
},{
	S_CONDITION: lambda: data().ratskulls_emergency_schedule, 
	"00:00:00" : {
		S_START : [goto(638.1,559.4)],
		S_LOOP  : []
	}
}),

"RATSKULL_014": ({
	S_CONDITION:lambda:data().RatskullsKonversationAktiv,
	# Konversation
	"01:20:00":{
		S_LOCATION : 1,
		S_START  :(goto(636.0,559.8)),
		S_LOOP	 :(conversate(["RATSKULL_012","RATSKULL_013","RATSKULL_011"])),
	},
	# Sitzen, warten
	"15:10:00":{
		S_LOCATION : 2,
		S_START  :(sit_down_on_ground()),
		S_LOOP	 :(sit_on_ground()),
	},
},{
	S_CONDITION: lambda: data().ratskulls_emergency_schedule, 
	"00:00:00" : {
		S_START : [goto(636,559.8)],
		S_LOOP  : []
	}
}),
[/spoiler]

Na lol,  #batsch da habe ich aus Versehen auf den roten Knopf gedrückt  :atomrofl7ep5rb:

:smug: Dekontamination fast abgeschlossen, allgemeine Aufräumarbeiten...  #knirsch  ...  >:D ....  ich könnt  #kotzen# ... Kaffeepause  :coffee
Last edited by Torka on Sun Oct 17, 2010 6:30 am, edited 1 time in total.
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Lexx
Administrator
Posts: 27348
Joined: Sat Dec 10, 2005 6:27 pm

Re: Mod-Tagebuch

Post by Lexx »

Die Pilze sehen gut aus, aber ich wage zu bezweifeln, dass in dem Teil der Welt Champignons wachsen. :p
only when you no-life you can exist forever, because what does not live cannot die
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Re: Mod-Tagebuch

Post by Torka »

Lexx wrote: Die Pilze sehen gut aus, aber ich wage zu bezweifeln, dass in dem Teil der Welt Champignons wachsen. :p
Die Pilze sind eigentlich die Modelle aus den Pilzfarmen der Höhle. Die GNO-Karte ist nur der Teststandort für die erstellten Objekte  ;). Wenn es denn mal zur Modifikation kommen sollte, werden sie sicher in den Pilzfarmen der Schatten zu finden sein oder vereinzelt in tiefen, schattigen Tälern in der Nähe einer Quelle.
Ob Champignon- oder Egerlingsartige (Agaricaceae) auch im Südwesten der USA vorkommen habe ich mich auch gefragt und war recht erstaunt über die Antworten.
Podaxis pistillaris ist z.B. eine Pilzart aus der Familie der Champignonartigen, welche auch in der Sonorawüste wächst. Der Pilz ist in den Halbwüsten Afrikas, Asiens, Australiens und Amerikas zwischen 40 Grad nördlicher und 40 Grad südlicher Breite zu finden. Die meisten Entdeckungen wurden in Regionen mit langen Trockenzeiten gemacht. Der Pilz wächst am schnellsten bei Temperaturen um 40 Grad Celsius. Bis etwa 20 und ab 50 Grad Celsius kann er nicht wachsen.
Den dramatischen Klimaveränderungen im Szenario des Spiels geschuldet werden die Pilze aber sehr untergeordnet und eher seltener auf den Karten zu finden sein. Vielleicht wird man Handel in den Pilzfarmen betreiben können oder durch aktive Mitarbeit (Bewäsern, Düngen) könnte es möglich sein selbst Pilze zu züchten.

Quellen:
http://www.forestryimages.org/browse/de ... um=1570702
http://de.wikipedia.org/wiki/Podaxis_pistillaris
http://www.arizonensis.org/sonoran/fiel ... laris.html
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
User avatar
Torka
Jet Dealer
Posts: 247
Joined: Thu Mar 25, 2010 5:40 pm
Location: Östlich des Stuhles des Kaisers wirst du mich finden, ansonsten bin ich Lost in Space

Re: Mod-Tagebuch

Post by Torka »

Leider komme ich nur noch unregelmäßig zum modifizieren. Der neue Job im RL ist doch arg zeitfressend  >:(. Mein Rechner hat nach 6 Jahren auch leider den Geist aufgegeben und es bleibt nur noch eine Datensicherung übrig - aber Ostern wird auch eine neue Rechnergeneration auferstehen.  :D

Wenn es machbar ist, wird es auch hier wieder weiter gehen....
Typ auf Hügel an einem See, der jetzt jedes Jahr einen Zentimeter seines Wasserspiegels verliert wrote:"So wie ihr von den Menschen behandelt werden möchtet, so behandelt sie auch. Denn das ist die Botschaft des Gesetztes und der Propheten."
etwa 32 n.s.G.
Post Reply

Return to “The Fall”