Ressourcen-Icon

Release Oblivion Interface Overhaul 3 3.0

Hi Xerus

Der gute DWS hat mir diesen netten Post auf WoP in meinen Thread geschrieben.

Jetzt komme ich langsam mal dazu...

Kleine Problemchen erwähne ich mal nur so nebenher, falls es bei jemandem klingelt.

DS Storage Sacks gibt mir normalerweise 10 Storage Sacks ins Inventar, mit OWC-ND nur einen?

Toggleable Quantity Prompt [komplette Stacks mit shift verschieben, vereinzeln per Ctrl-Button, wie bei Morrowind] wirft Fehler hoch, wenn ich shift-Stack oder ctrl-Stack klicke. Irgendwas mit "kann ich nicht lesen", bitte GUI-Mod zwecks troubleshooting an TQP-Ersteller melden (wahrscheinlich aber wegen deutschen Begriffen in den Menüs).

Beides sind OBSE script Mods mit ini. Kann trotzdem noch mal die Ladereihenfolge verändern...

:-D

Könntest du da mal Licht ins Dunkel bringen, was man da unternehmen kann?
Zum Thread: KlickKlack
 
Zuletzt bearbeitet:
Könntest du da mal Licht ins Dunkel bringen, was man da unternehmen kann?
Zum Thread: KlickKlack

Hallo Eddy,

das bedeutet, dass das OBSE-Script von "Toggleable Quantity Prompt" den Parameter "quantity_background\quantity_scroll\user2" nicht aus dem XML-Code der Datei "Data\Menus\quantity_menu.xml" lesen kann, bzw. den Parameter "quantity_background\quantity_scroll\user7" nicht in diesen Code reinschreiben kann. Das liegt einfach daran, dass diese Codeblöcke bei OIO anders benannt sind, somit funktioniert das ganze natürlich nicht mehr.

In der Readme von OIO steht folgender Hinweis:
Modifikationen, die mit Hilfe von OBSE (Oblivion Script Extender) per Script in die XML-Codes des Interfaces eingreifen, könnten eventuell Kompatibilitätsprobleme verursachen, da die XML-Codes von OIO teilweise völlig anders strukturiert sind.
Genau um dieses Kompatibilitätsproblem handelt es sich hierbei.

Lösung 1:
Die Datei "Data\Menus\quantity_menu.xml" von OIO öffnen und per Suchen-und-Ersetzen-Funktion alle Einträge "quantity_slider_bar" in "quantity_scroll" umbenennen (es sind 6 Einträge).

Lösung 2:
Einfach die Datei "Data\Menus\quantity_menu.xml" von OIO löschen oder umbenennen. Das ist aber nur eine Notlösung, da dadurch das Mengenauswahlmenü auf Vanilla zurückgesetzt wird und somit auch das Feature "auf Eins setzen" nicht mehr vorhanden ist.

Lösungen ohne Gewähr. ;)

Edit: Schön dass DWS ein paar Screenshots hochgeladen hat, sonst hätte ich das Problem wohl kaum verstanden. Da bestätigt sich wieder mal: "Bilder sprechen mehr als 1000 Worte" ;)

Gruß Xerus
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Eddy Kaschinski
Ich werde ihn dann mal auf deine Antwort verlinken. :pfeif:

Du glaubst doch wohl nicht im Ernst, dass ich auch nur ein Wort von dem Zeug verstanden habe, oder? :book:
 
@ Eddy

Es reicht völlig aus, wenn man versteht, was unter "Lösung 1" steht. Das sollte doch nicht schwierig sein, oder? ;)
 
DWS meint: Erst mal vielen Dank für die Mühe, aber TQP läuft danach auf weitere Fehler auf.

Bei Lösung 1)
"Couldnt read a menu element: quantity_background\quantity_button_okay"

Bei Lösung 2)
"Couldnt read a menu element: background\button_3\visible"

Wenn ich ohne TQP auskommen würde, würde ich ja nicht so einen Aufriss machen, aber das spart gegenüber OIO doch noch 2-3 clicks + Mausbewegung pro Einzeltransfer.
 
Bei Lösung 1)
"Couldnt read a menu element: quantity_background\quantity_button_okay"

Bei Lösung 2)
"Couldnt read a menu element: background\button_3\visible"

Wenn ich ohne TQP auskommen würde, würde ich ja nicht so einen Aufriss machen, aber das spart gegenüber OIO doch noch 2-3 clicks + Mausbewegung pro Einzeltransfer.

Man, sein ihr klickfaul. ;)

Ich weiß nicht, was TQP sonst noch alles versucht aus den XML-Codes der Menüs herauszulesen, aber hier der nächste Lösungsansatz:

Die Datei "Data\Menus\quantity_menu.xml" von OIO öffnen und den kompletten Inhalt gegen Folgenses ersetzen:
Code:
<!--

Oblivion Interface Overhaul by Xerus
************************************

Quantity Menu
--------------------------------------------------------------------------------
Data\Menus\quantity_menu.xml
Version: 3.0
Compatibility: Toggleable Quantity Prompt

Included Prefabs:
Data\Menus\Prefabs\OIO\OIOconfig.xml
Data\Menus\Prefabs\generic_background.xml
Data\Menus\Prefabs\button_short.xml
Data\Menus\Prefabs\button_long.xml

================================================================================ -->


<menu name="QuantityMenu">
	<class> &QuantityMenu; </class>
	<stackingtype> &no_click_past; </stackingtype>
	<explorefade> 0.2 </explorefade>
	<alpha> 0 </alpha>
	<x> 0 </x>
	<y> 0 </y>
	<locus> &true; </locus>
	
	
	<!-- CONFIGURATION
	============================================================ -->
	<rect name="quantity_config">
		<include src="OIO\OIOconfig.xml"/> <!--
		 _____________ 
		|   < XML >   |
		|  _________  |
		|  _________  |
		|  _________  |
		|  _________  |
		|_____________| -->
		<_config0>
			<copy src="me()" trait="_font_adjust_factor"/>
			<max> 0.9 </max>
			<min> 1.1 </min>
		</_config0>
		<_config1>
			<copy src="me()" trait="_quantity_set_one_button"/> <!--
			0 = deactivated
			1 = activated -->
		</_config1>
	</rect>
	
	
	<!-- BACKGROUND
	============================================================ -->
	<rect name="quantity_background">
		<include src="generic_background.xml"/> <!--
		 _____________ 
		|   < XML >   |
		|  _________  |
		|  _________  |
		|  _________  |
		|  _________  |
		|_____________| -->
		<id> 1 </id>
		<target> &true; </target>
		<depth> 1 </depth>
		<x>
			<copy src="screen()" trait="width"/>
			<sub src="me()" trait="width"/>
			<div> 2 </div>
		</x>
		<y>
			<copy src="screen()" trait="height"/>
			<sub src="me()" trait="height"/>
			<div> 2 </div>
		</y>
		<locus> &true; </locus>
		<user0> 580 </user0> <!-- width -->
		<user1> 260 </user1> <!-- height -->
		
		
		<!-- QUESTION
		============================================================ -->
		<text name="quantity_question">
			<id> 2 </id>
			<font> 3 </font>
			<string> <copy src="strings()" trait="_quantity_how_many"/> </string>
			<justify> &left; </justify>
			<red> 117 </red>
			<green> 59 </green>
			<blue> 33 </blue>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y> 30 </y>
		</text>
		
		
		<!-- COUNT
		============================================================ -->
		<text name="quantity_count">
			<font> 3 </font>
			<string> <copy src="quantity_scroll" trait="user7"/> </string>
			<justify> &left; </justify>
			<red> 33 </red>
			<green> 59 </green>
			<blue> 117 </blue>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y> 60 </y>
		</text>
		
		
		<!-- SLIDER BAR
		============================================================ -->
		<!--
		The slider bar is built explicitly here and is not taken from the prefabs (horiz_floating_scroll.xml)
		in order to include the "set to one" feature. -->
		<image name="quantity_scroll">
			<id> 3 </id>
			<repeathorizontal> &true; </repeathorizontal>
			<filename> Menus\Shared\horizontal_scrollbar_line.dds </filename>
			<zoom>
				<copy> 100 </copy>
				<mul src="me()" trait="user11"/>
			</zoom>
			<width> 350 </width>
			<height>
				<copy> 16 </copy>
				<mul src="me()" trait="user11"/>
			</height>
			<depth> 5 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y> 120 </y>
			<locus> &true; </locus>
			<user1> 0 </user1> <!-- minimum range value -->
			<user2> 100 </user2> <!-- set by code - maximum range value -->
			<user3> 1 </user3> <!-- step distance -->
			<user4> 25 </user4> <!-- set by code - jump distance -->
			<user5> 0 </user5> <!-- starting value -->
			<user6> 4 </user6> <!-- marker's id -->
			<user7> <!-- current value -->
				<copy src="child(horizontal_scroll_marker)" trait="_value_scrolled_to"/>
			</user7>
			<user11> 0.9 </user11> <!-- zoom factor -->
			
			<_scrollable_range>
				<copy src="me()" trait="user2"/>
				<sub src="me()" trait="user1"/>
			</_scrollable_range>
			
			<_mouseover_any>
				<copy src="child(horizontal_scroll_leftside)" trait="mouseover"/>
				<add src="child(horizontal_scroll_rightside)" trait="mouseover"/>
				<add src="child(horizontal_scroll_left)" trait="mouseover"/>
				<add src="child(horizontal_scroll_right)" trait="mouseover"/>
				<add src="child(horizontal_scroll_marker)" trait="mouseover"/>
				<gt> 0 </gt>
				<sub> 1 </sub>
			</_mouseover_any>
			
			<rect name="horizontal_scroll_leftside">
				<id> &generic; </id>
				<target> &true; </target>
				<width> <!-- distance between the left arrow and the marker -->
					<copy src="sibling(horizontal_scroll_marker)" trait="x"/>
				</width>
				<height>
					<copy> 36 </copy>
					<mul src="parent()" trait="user11"/>
				</height>
				<depth> 1 </depth>
				<x> 0 </x>
				<y>
					<copy> -9 </copy>
					<mul src="parent()" trait="user11"/>
				</y>
				<clicksound> 3 </clicksound>
			</rect>
			
			<rect name="horizontal_scroll_rightside">
				<id> &generic; </id>
				<target> &true; </target>
				<width> <!-- distance between the right arrow and the marker -->
					<copy src="parent()" trait="width"/>
					<sub src="sibling(horizontal_scroll_leftside)" trait="width"/>
					<sub src="sibling(horizontal_scroll_marker)" trait="width"/>
				</width>
				<height>
					<copy> 36 </copy>
					<mul src="parent()" trait="user11"/>
				</height>
				<depth> 1 </depth>
				<x>
					<copy src="sibling(horizontal_scroll_leftside)" trait="width"/>
					<add src="sibling(horizontal_scroll_marker)" trait="width"/>
				</x>
				<y>
					<copy> -9 </copy>
					<mul src="parent()" trait="user11"/>
				</y>
				<clicksound> 3 </clicksound>
			</rect>
			
			<image name="horizontal_scroll_left">
				<id> &generic; </id>
				<target> &true; </target>
				<filename> Menus\Shared\horizontal_scrollbar_parts.dds </filename>
				<zoom>
					<copy> 100 </copy>
					<mul src="parent()" trait="user11"/>
				</zoom>
				<width>
					<copy> 50 </copy>
					<mul src="parent()" trait="user11"/>
				</width>
				<height>
					<copy> 42 </copy>
					<mul src="parent()" trait="user11"/>
				</height>
				<depth> 2 </depth>
				<x>
					<copy src="parent()" trait="user11"/>
					<sub src="me()" trait="width"/>
				</x>
				<y>
					<copy> -11 </copy>
					<mul src="parent()" trait="user11"/>
				</y>
				<clicksound> 3 </clicksound>
			</image>
			
			<image name="horizontal_scroll_right">
				<id> &generic; </id>
				<target> &true; </target>
				<filename> Menus\Shared\horizontal_scrollbar_parts.dds </filename>
				<zoom>
					<copy> 100 </copy>
					<mul src="parent()" trait="user11"/>
				</zoom>
				<cropx>
					<copy> 128 </copy>
					<mul src="parent()" trait="user11"/>
				</cropx>
				<width>
					<copy> 51 </copy>
					<mul src="parent()" trait="user11"/>
				</width>
				<height>
					<copy> 42 </copy>
					<mul src="parent()" trait="user11"/>
				</height>
				<depth> 2 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="parent()" trait="user11"/>
				</x>
				<y>
					<copy> -11 </copy>
					<mul src="parent()" trait="user11"/>
				</y>
				<clicksound> 3 </clicksound>
			</image>
			
			<image name="horizontal_scroll_marker">
				<id> <copy src="parent()" trait="user6"/> </id>
				<target> &true; </target>
				<filename> Menus\Shared\horizontal_scrollbar_parts.dds </filename>
				<zoom>
					<copy> 100 </copy>
					<mul src="parent()" trait="user11"/>
				</zoom>
				<cropx>
					<copy> 64 </copy>
					<mul src="parent()" trait="user11"/>
				</cropx>
				<width>
					<copy> 39 </copy>
					<mul src="parent()" trait="user11"/>
				</width>
				<height>
					<copy> 36 </copy>
					<mul src="parent()" trait="user11"/>
				</height>
				<depth> 3 </depth>
				<x> <!-- set my position relative to the current scroll -->
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<mul>
						<copy src="me()" trait="_value_scrolled_to"/>
						<sub src="parent()" trait="user1"/>
						<div src="parent()" trait="_scrollable_range"/>
					</mul>
				</x>
				<y>
					<copy> -9 </copy>
					<mul src="parent()" trait="user11"/>
				</y>
				<clicksound> 3 </clicksound>
				<user8> <!-- for dragging - drag interval -->
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div src="parent()" trait="_scrollable_range"/>
				</user8>
				<user9> 0 </user9> <!-- for dragging - lines dragged -->
				
				<_value_scrolled_to>
					<!-- retain old value -->
					<add>
						<copy src="sibling(horizontal_scroll_right)" trait="clicked"/>
						<sub src="sibling(horizontal_scroll_left)" trait="clicked"/>
						<mul src="parent()" trait="user3"/> <!-- step distance -->
					</add>
					<add>
						<copy src="sibling(horizontal_scroll_rightside)" trait="clicked"/>
						<sub src="sibling(horizontal_scroll_leftside)" trait="clicked"/>
						<mul src="parent()" trait="user4"/> <!-- jump distance -->
					</add>
					<sub> <!-- "set to one" feature -->
						<copy src="quantity_button_one" trait="clicked"/>
						<mul src="parent()" trait="_scrollable_range"/>
					</sub>
					<add src="me()" trait="user9"/>
					<add src="parent()" trait="user5"/>
					<max src="parent()" trait="user1"/>
					<min src="parent()" trait="user2"/>
				</_value_scrolled_to>
			</image>
		</image>
		
		<image name="quantity_scroll_focus">
			<id> &generic; </id>
			<target> &true; </target>
			<repeathorizontal> &true; </repeathorizontal>
			<filename> Menus\Dialog\dialog_selection_full.dds </filename>
			<alpha>
				<copy> 255 </copy>
				<mul>
					<copy src="me()" trait="mouseover"/>
					<add src="quantity_scroll" trait="_mouseover_any"/>
					<min> 1 </min>
				</mul>
			</alpha>
			<zoom> 93.75 </zoom>
			<width>
				<copy src="quantity_scroll" trait="width"/>
				<add> 115 </add>
			</width>
			<height> 60 </height>
			<depth> 3 </depth>
			<x>
				<copy src="quantity_scroll" trait="x"/>
				<sub> 57 </sub>
			</x>
			<y>
				<copy src="quantity_scroll" trait="y"/>
				<sub> 21 </sub>
			</y>
			<locus> &true; </locus>
			
			<xdefault> &true; </xdefault>
			<xleft> <ref src="horizontal_scroll_left" trait="clicked"/> </xleft>
			<xright> <ref src="horizontal_scroll_right" trait="clicked"/> </xright>
			
			<image name="quantity_scroll_focus_2">
				<filename> Menus\Dialog\dialog_selection_cut.dds </filename>
				<alpha> <copy src="parent()" trait="alpha"/> </alpha>
				<zoom> 93.75 </zoom>
				<width> 98 </width>
				<height> 60 </height>
				<depth> 1 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub> 90 </sub>
				</x>
				<y> 0 </y>
			</image>
		</image>
		
		
		<!-- BUTTONS
		============================================================ -->
		<rect name="quantity_buttons">
			<width>
				<copy src="child(quantity_button_cancel)" trait="x"/>
				<add src="child(quantity_button_cancel)" trait="width"/>
			</width>
			<height>
				<copy src="child(quantity_button_cancel)" trait="height"/>
			</height>
			<depth> 5 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<add> 7 </add> <!-- shadow adjustment -->
				<div> 2 </div>
			</x>
			<y>
				<copy src="parent()" trait="height"/>
				<sub src="me()" trait="height"/>
				<add> 7 </add> <!-- shadow adjustment -->
				<sub> 30 </sub>
			</y>
			<locus> &true; </locus>
			
			
			<!-- BUTTON ONE
			============================================================ -->
			<image name="quantity_button_one">
				<include src="button_short.xml"/> <!--
				 _____________ 
				|   < XML >   |
				|  _________  |
				|  _________  |
				|  _________  |
				|  _________  |
				|_____________| -->
				<id> &generic; </id>
				<visible>
					<copy src="quantity_config" trait="_config1"/>
					<eq> 1 </eq>
				</visible>
				<depth> 1 </depth>
				<x> 0 </x>
				<y> 0 </y>
				<clicksound> 3 </clicksound>
				<user0> <copy src="strings()" trait="_quantity_one"/> </user0> <!-- button text -->
				<user1> &true; </user1> <!-- true if enabled, false if disabled -->
			</image>
			
			
			<!-- BUTTON OK
			============================================================ -->
			<image name="quantity_button_ok">
				<include src="button_short.xml"/> <!--
				 _____________ 
				|   < XML >   |
				|  _________  |
				|  _________  |
				|  _________  |
				|  _________  |
				|_____________| -->
				<id> 6 </id>
				<depth> 1 </depth>
				<x>
					<copy> 130 </copy>
					<onlyif src="quantity_button_one" trait="visible"/>
				</x>
				<y> 0 </y>
				<user0> <copy src="strings()" trait="_quantity_ok"/> </user0> <!-- button text -->
				<user1> &true; </user1> <!-- true if enabled, false if disabled -->
			</image>
			
			
			<!-- BUTTON CANCEL
			============================================================ -->
			<image name="quantity_button_cancel">
				<include src="button_long.xml"/> <!--
				 _____________ 
				|   < XML >   |
				|  _________  |
				|  _________  |
				|  _________  |
				|  _________  |
				|_____________| -->
				<id> 7 </id>
				<depth> 1 </depth>
				<x>
					<copy src="quantity_button_ok" trait="x"/>
					<add> 130 </add>
				</x>
				<y> 0 </y>
				<clicksound> 2 </clicksound>
				<user0> <copy src="strings()" trait="_quantity_cancel"/> </user0> <!-- button text -->
				<user1> &true; </user1> <!-- true if enabled, false if disabled -->
			</image>
		</rect>
		
		<rect name="quantity_button_okay"> <!-- dummy okay button -->
			<id> 6 </id>
		</rect>
	</rect>
</menu>
Die Datei "Data\Menus\message_menu.xml" von OIO öffnen und den kompletten Inhalt gegen Folgenses ersetzen:
Code:
<!--

Oblivion Interface Overhaul by Xerus
************************************

Message Menu
--------------------------------------------------------------------------------
Data\Menus\message_menu.xml
Version: 3.0
Compatibility: Toggleable Quantity Prompt

Included Prefabs:
Data\Menus\Prefabs\OIO\OIOconfig.xml
Data\Menus\Prefabs\focus_box.xml
Data\Menus\Prefabs\generic_background.xml

================================================================================ -->


<menu name="MessageMenu">
	<class> &MessageMenu; </class>
	<stackingtype> &no_click_past; </stackingtype>
	<explorefade> 0.2 </explorefade>
	<alpha> 0 </alpha>
	<locus> &true; </locus>
	
	
	<!-- CONFIGURATION
	============================================================ -->
	<rect name="message_config">
		<include src="OIO\OIOconfig.xml"/> <!--
		 _____________ 
		|   < XML >   |
		|  _________  |
		|  _________  |
		|  _________  |
		|  _________  |
		|_____________| -->
		<_config0>
			<copy src="me()" trait="_font_adjust_factor"/>
			<max> 0.9 </max>
			<min> 1.1 </min>
		</_config0>
	</rect>
	
	
	<!-- FOCUS BOX
	============================================================ -->
	<rect name="message_focus_box">
		<include src="focus_box.xml"/> <!--
		 _____________ 
		|   < XML >   |
		|  _________  |
		|  _________  |
		|  _________  |
		|  _________  |
		|_____________| -->
		<id> 3 </id>
		<visible> &false; </visible> <!-- set by code -->
	</rect>
	
	
	<!-- BACKGROUND
	============================================================ -->
	<rect name="background">
		<include src="generic_background.xml"/> <!--
		 _____________ 
		|   < XML >   |
		|  _________  |
		|  _________  |
		|  _________  |
		|  _________  |
		|_____________| -->
		<id> 1 </id>
		<target> &true; </target>
		<depth> 3 </depth>
		<x> 0 </x>
		<y> 0 </y>
		<locus> &true; </locus>
		<user0> 680 </user0> <!-- width -->
		<user1> <!-- height -->
			<copy src="button_10" trait="y"/>
			<add src="button_10" trait="height"/>
			<add> 30 </add>
		</user1>
		
		
		<!-- MESSAGE
		============================================================ -->
		<text name="message_text">
			<id> 2 </id>
			<font> 3 </font>
			<string> text </string> <!-- set by code -->
			<justify> &left; </justify>
			<red> 117 </red>
			<green> 59 </green>
			<blue> 33 </blue>
			<wrapwidth>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="x"/>
				<sub> 30 </sub>
				<mul src="message_config" trait="_config0"/>
			</wrapwidth>
			<depth> 3 </depth>
			<x> 30 </x>
			<y> 30 </y>
		</text>
		
		<image name="message_divider">
			<filename> Menus\Shared\shared_border_horizontal_1.dds </filename>
			<cropx> 20 </cropx>
			<width>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="x"/>
				<sub> 30 </sub>
			</width>
			<height> 8 </height>
			<depth> 3 </depth>
			<x> 30 </x>
			<y>
				<copy src="message_text" trait="y"/>
				<add src="message_text" trait="height"/>
				<add> 10 </add>
			</y>
		</image>
		
		
		<!-- BUTTON 1
		============================================================ -->
		<rect name="button_1">
			<id> 4 </id>
			<visible> &true; </visible>
			<target> &true; </target>
			<width>
				<copy src="child(button_1_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_1_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="message_divider" trait="y"/>
				<add> 30 </add>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &true; </xdefault>
			<xdown> <ref src="button_2" trait="mouseover"/> </xdown>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_1_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
		
		
		<!-- BUTTON 2
		============================================================ -->
		<rect name="button_2">
			<id> 5 </id>
			<visible> &false; </visible> <!-- set by code -->
			<target> &true; </target>
			<width>
				<copy src="child(button_2_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_2_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="button_1" trait="height"/>
				<add> 13 </add>
				<onlyif src="me()" trait="visible"/>
				<add src="button_1" trait="y"/>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &false; </xdefault>
			<xup> <ref src="button_1" trait="mouseover"/> </xup>
			<xdown> <ref src="button_3" trait="mouseover"/> </xdown>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_2_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
		
		
		<!-- BUTTON 3
		============================================================ -->
		<rect name="button_3">
			<id> 6 </id>
			<visible> &false; </visible> <!-- set by code -->
			<target> &true; </target>
			<width>
				<copy src="child(button_3_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_3_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="button_2" trait="height"/>
				<add> 13 </add>
				<onlyif src="me()" trait="visible"/>
				<add src="button_2" trait="y"/>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &false; </xdefault>
			<xup> <ref src="button_2" trait="mouseover"/> </xup>
			<xdown> <ref src="button_4" trait="mouseover"/> </xdown>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_3_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
		
		
		<!-- BUTTON 4
		============================================================ -->
		<rect name="button_4">
			<id> 7 </id>
			<visible> &false; </visible> <!-- set by code -->
			<target> &true; </target>
			<width>
				<copy src="child(button_4_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_4_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="button_3" trait="height"/>
				<add> 13 </add>
				<onlyif src="me()" trait="visible"/>
				<add src="button_3" trait="y"/>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &false; </xdefault>
			<xup> <ref src="button_3" trait="mouseover"/> </xup>
			<xdown> <ref src="button_5" trait="mouseover"/> </xdown>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_4_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
		
		
		<!-- BUTTON 5
		============================================================ -->
		<rect name="button_5">
			<id> 8 </id>
			<visible> &false; </visible> <!-- set by code -->
			<target> &true; </target>
			<width>
				<copy src="child(button_5_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_5_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="button_4" trait="height"/>
				<add> 13 </add>
				<onlyif src="me()" trait="visible"/>
				<add src="button_4" trait="y"/>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &false; </xdefault>
			<xup> <ref src="button_4" trait="mouseover"/> </xup>
			<xdown> <ref src="button_6" trait="mouseover"/> </xdown>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_5_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
		
		
		<!-- BUTTON 6
		============================================================ -->
		<rect name="button_6">
			<id> 9 </id>
			<visible> &false; </visible> <!-- set by code -->
			<target> &true; </target>
			<width>
				<copy src="child(button_6_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_6_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="button_5" trait="height"/>
				<add> 13 </add>
				<onlyif src="me()" trait="visible"/>
				<add src="button_5" trait="y"/>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &false; </xdefault>
			<xup> <ref src="button_5" trait="mouseover"/> </xup>
			<xdown> <ref src="button_7" trait="mouseover"/> </xdown>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_6_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
		
		
		<!-- BUTTON 7
		============================================================ -->
		<rect name="button_7">
			<id> 10 </id>
			<visible> &false; </visible> <!-- set by code -->
			<target> &true; </target>
			<width>
				<copy src="child(button_7_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_7_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="button_6" trait="height"/>
				<add> 13 </add>
				<onlyif src="me()" trait="visible"/>
				<add src="button_6" trait="y"/>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &false; </xdefault>
			<xup> <ref src="button_6" trait="mouseover"/> </xup>
			<xdown> <ref src="button_8" trait="mouseover"/> </xdown>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_7_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
		
		
		<!-- BUTTON 8
		============================================================ -->
		<rect name="button_8">
			<id> 11 </id>
			<visible> &false; </visible> <!-- set by code -->
			<target> &true; </target>
			<width>
				<copy src="child(button_8_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_8_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="button_7" trait="height"/>
				<add> 13 </add>
				<onlyif src="me()" trait="visible"/>
				<add src="button_7" trait="y"/>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &false; </xdefault>
			<xup> <ref src="button_7" trait="mouseover"/> </xup>
			<xdown> <ref src="button_9" trait="mouseover"/> </xdown>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_8_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
		
		
		<!-- BUTTON 9
		============================================================ -->
		<rect name="button_9">
			<id> 12 </id>
			<visible> &false; </visible> <!-- set by code -->
			<target> &true; </target>
			<width>
				<copy src="child(button_9_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_9_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="button_8" trait="height"/>
				<add> 13 </add>
				<onlyif src="me()" trait="visible"/>
				<add src="button_8" trait="y"/>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &false; </xdefault>
			<xup> <ref src="button_8" trait="mouseover"/> </xup>
			<xdown> <ref src="button_10" trait="mouseover"/> </xdown>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_9_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
		
		
		<!-- BUTTON 10
		============================================================ -->
		<rect name="button_10">
			<id> 13 </id>
			<visible> &false; </visible> <!-- set by code -->
			<target> &true; </target>
			<width>
				<copy src="child(button_10_text)" trait="width"/>
				<add> 20 </add>
				<max> 80 </max>
			</width>
			<height>
				<copy src="child(button_10_text)" trait="height"/>
				<add> 2 </add>
			</height>
			<depth> 3 </depth>
			<x>
				<copy src="parent()" trait="width"/>
				<sub src="me()" trait="width"/>
				<div> 2 </div>
			</x>
			<y>
				<copy src="button_9" trait="height"/>
				<add> 13 </add>
				<onlyif src="me()" trait="visible"/>
				<add src="button_9" trait="y"/>
			</y>
			<locus> &true; </locus>
			<string> text </string> <!-- set by code - button text -->
			
			<xdefault> &false; </xdefault>
			<xup> <ref src="button_9" trait="mouseover"/> </xup>
			
			<!--
			 _____________________ 
			| focus box goes here |
			|_____________________| -->
			
			<text name="button_10_text">
				<font> 3 </font>
				<string> <copy src="parent()" trait="string"/> </string>
				<justify> &left; </justify>
				<red> 117 </red>
				<green> 59 </green>
				<blue> 33 </blue>
				<wrapwidth> <copy src="message_text" trait="wrapwidth"/> </wrapwidth>
				<depth> 3 </depth>
				<x>
					<copy src="parent()" trait="width"/>
					<sub src="me()" trait="width"/>
					<div> 2 </div>
				</x>
				<y>
					<copy src="parent()" trait="height"/>
					<sub src="me()" trait="height"/>
					<div> 2 </div>
				</y>
			</text>
		</rect>
	</rect>
	
	<!--
	This needs to go after the background so we get the proper width and height. -->
	<x>
		<copy src="screen()" trait="width"/>
		<sub src="background" trait="width"/>
		<div> 2 </div>
	</x>
	<y>
		<copy src="screen()" trait="height"/>
		<sub src="background" trait="height"/>
		<div> 2 </div>
	</y>
</menu>
Ich habe soweit alle Einträge umbenannt, die die bisher genannten Probleme verursacht haben könnten.
 
Zuletzt bearbeitet:
hio ,ich habe eine frage in bezug der Effekteinstellungsmenü ??

welche bedeutung haben :

Einstellungsgrenze für Zielstufe
Einstellungsgrenze für Stärke
Einstellungsgrenze für Bereich
Einstellungsgrenze für Dauer
finde in der readme keine erklärung geschweige in der suchfunktion

mfg nuckey
 
Damit ist das Menü hier gemeint: Bild

Verdopplung bedeutet z.B., dass wenn du den Schieberegler ganz nach rechts verschiebst, du dadurch den doppelten maximalen Einstellungswert erhälst.
 
Zuletzt bearbeitet:
Immer noch "Couldnt read a menu element: quantity_background\quantity_button_okay"

Vielleicht erwartet TQP an bestimmten Stellen noch okay buttons, die OIO entfernt oder ersetzt hat?

Wenn ich Strg+Stapel klicke, setzt sich zumindest schon mal die Menge auf 1, bzw. mit Shift+Stapel auf Maximum, das sehe ich dann im quantity slider Bild (das eigentlich mit TQP gleich unterdrückt werden sollte) im nächsten Fenster nach der Fehlermeldung.
 
@ WeissNix

OK, ich sehe schon wo das Problem liegt. Ich muss aber noch wissen, welche Variable TQP nicht aus dem Codeblock "quantity_button_okay" lesen kann. Bist du sicher, dass die Fehlermeldung so vollständig ist?
"Couldnt read a menu element: quantity_background\quantity_button_okay"
 
Ja, das ist leider alles. Ich habe auch schon das neue conscribe installiert, aber damit komme ich gar nicht mehr klar. Kann man damit jetzt nur noch durch Eingriff in die jeweiligen Modscripts ein log registrieren? Früher konnte man doch irgendwie die Hex-Ladenummer der zu loggenden Mod in irgendein Konsolenkommando eintippen... Ich steig da nicht mehr durch, alles wird komplizierter statt einfacher.


EDIT: Ich glaube, da müssten irgendwie noch die clicked-Blöcke rein, damit ok und cancel automatisch quittiert werden.

DarN hat oben noch so einen Block:

<xup> <ref src="quantity_button_okay" trait="clicked"/> </xup>
<xdown> <ref src="quantity_button_cancel" trait="clicked"/> </xdown>
<xleft> <ref src="horizontal_scroll_left" trait="clicked"/> </xleft>
<xright> <ref src="horizontal_scroll_right" trait="clicked"/> </xright>
<xbuttona> <ref src="quantity_button_okay" trait="clicked"/> </xbuttona>
<xbuttonb> <ref src="quantity_button_cancel" trait="clicked"/> </xbuttonb>

Und der quantity_Okay Block sieht damit so aus:

<!-- BUTTON OKAY =====================================================================-->
<image name="quantity_button_okay">
<include src="darn\button_short.xml" />
<id> 6 </id>
<target> &true; </target>
<x>
<copy src="quantity_button_cancel" trait="x" />
<sub src="me()" trait="width" />
<sub> 20 </sub>
</x>
<y>
<!-- <copy src="parent()" trait="height" />
<sub src="me()" trait="height" />
<sub> 20 </sub> -->
<copy src="quantity_button_cancel" trait="y" />
</y>
<depth> 3 </depth>
<user0> <copy src="strings()" trait="_ok"/> </user0>

<user20> &xbuttona; </user20>
</image>
 
Zuletzt bearbeitet:
@ WeissNix

Also, an diesen "clicked"-Traits liegt das Problem eher nicht. Die sind für die XBox relevant, damit z.B. das Drücken der Taste "A" auf dem XBox-Controller einem Mausklick auf die Schaltfläche "OK" entspricht. Die "xup", "xleft", usw. dienen auch für die Steuerung mit den Pfeiltasten auf der Tastatur. Die habe ich aber bei OIO aus gewissen Gründen entfernt.

Das Problem hier ist Folgendes: Im Standard-Quantity-Menü ist der Codeblock "quantity_button_okay" direkt als "child" im Codeblock "quantity_background" untergebracht, also lautet der Pfad so:
Code:
"quantity_background\quantity_button_okay"
Im OIO-Quantity-Menü gibt es noch den Zwischenblock "quantity_buttons", also lautet dort der Pfad so:
Code:
"quantity_background\quantity_buttons\quantity_button_ok"
Bzw. nachdem ich es umbenannt habe so:
Code:
"quantity_background\quantity_buttons\quantity_button_okay"
Und genau wegen diesem Zwischenblock "quantity_buttons" kann TQP den Code nicht lesen.

Ich glaube die Lösung zu kennen. Gib mir einfach den Link, von der TQP-Version, die du benutzt und ich kann dort im Script nachschauen und vielleicht das Problem schnell lösen.
 
Ja stimmt; die clicked-Änderungen sind eigentlich auch nur Relikte aus der Anfangszeit von TQP. Inzwischen -seit OBSE support- sollte es auch komplett ohne Manipulation der Original-XMLs funktionieren.

Seit deiner gestrigen Frage nach mehr Info aus der Fehlermeldung benutze ich die neuste Version (mit ini-support, weil ich dachte es hätte bessere debug-settings), das ist TQP 3.2.0.
 
So, ich habe mir jetzt das Script von TQP angeschaut. Es prüft u.a. ob die Schaltfläche "quantity_background\quantity_button_okay" vorhanden ist. Wenn ja, dann simuliert es einen Mausklick auf die OK-Schaltfläche. Wenn nein, dann spuckt es eine entsprechende Fehlermeldung aus. Ich habe nun eine Dummy-Schaltfläche erstellt, die "quantity_button_okay" heißt und den Code in meinem Post von vorhin aktualisiert. Versuche, ob jetzt alles funktioniert wie es soll.
 
  • Like
Reaktionen: WeissNix
Ich hab auch noch eine Frage: Der Ersteller dieser Mod, welche Statusbaren für verschiedene Anzeogen wie z.B. die Ladezustand der Waffe oder die Lebensenergie von Partnern einfügt, schreibt, dass dein Mod nicht mit dem Mod kompatibel ist. Könntest du vielleicht einen Kompatibilitätspatch machen mit dem beide Mods mit einander funltionieren. Ich kann nähmlich mittlerweile nicht mehr auf deinen Mod verzichten, würde mich aber über die ZUsätzlichen Statusbaren sehr freuen. Ich werde nachher mal den Mod mit deinem ausprobieren und sagen, welche Fehlermeldung angezeigt wird.
 
@ Sundog
Es gibt mittlerweile so einige Mods, für die ich Kompatibilitätspatches machen könnte (sollte). Es ist wieder mal mit einem Haufen Arbeit verbunden und ich habe nicht unbedingt die Zeit dafür. Eventuell komme ich später noch dazu.
Ich habe auch generell nichts dagegen, wenn ein anderer Modder den einen oder anderen Kompatibilitätspatch erstellt. Jedoch gibt es wahrscheinlich nicht viele, die sich mit diesem Interface-XML-Kram auskennen.