Page 2 of 2

Re: moving the onscreen messages to the side

Posted: Sat Sep 24, 2011 7:50 pm
by Yodeebe
Hurraaaaah!
Thanks, EV.
sorry to be such a [insert word here]


Thanks CSO, but EV's plan worked fine, once I understood it.
probably simpler than reproducing in triplicate too, although it might be good if messages didn't work in 'critical' mode.

Now I've got my head around it, i'll try it out & see if its worth trying your way.

Re: moving the onscreen messages to the side

Posted: Sat Sep 24, 2011 10:16 pm
by Yodeebe
oh no, it's me again! captain incompetent :p

it only appeared to work cos i still had CB hud in my addons.

So, to the other method, I've tried adding this:


message_gui =
{
width = 210;
height = 160;
x = -210;
y = -35;
row_height=10;
};

comm_log_gui =
{
width = 250;
height = 100;
x = -195;
y = 200;
row_height=10;
};



into various positions in this:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>crosshair_color</key>
<string>redColor</string>
<key>crosshair_scale</key>
<real>15.0</real>
<key>reticle_target_sensitive</key>
<true/>
<key>cloak_indicator_on_status_light</key>
<true/>
<key>overall_alpha</key>
<real>1</real>
<key>dials</key><!-- these are drawn, in order, after the legends -->
<array>
<dict><!-- Targetting enhancement -->
<key>equipment_required</key>
<string>EQ_SCANNER_SHOW_MISSILE_TARGET</string>
<key>selector</key>
<string>drawTargetReticle:</string>
</dict>
<dict><!--sniper compass -->
<key>equipment_required</key>
<string>EQ_TARGET_SCOPE</string>
<key>alpha</key>
<real>0.33</real>
<key>selector</key>
<string>drawCompass:</string>
<key>x</key>
<integer>0</integer>
<key>y</key>
<integer>0</integer>
<key>height</key>
<real>385</real>
<key>width</key>
<real>385</real>
<key>rgb_color</key>
<array>
<real>1.0</real>
<real>0.0</real>
<real>0.0</real>
</array>
</dict>
<dict><!-- scanner -->
<key>alpha</key>
<real>1</real>
<key>selector</key>
<string>drawScanner:</string>
<key>x</key>
<integer>0</integer>
<key>y</key>
<integer>-180</integer>
<key>height</key>
<real>112</real>
<key>width</key>
<real>328</real>
<key>rgb_color</key>
<array>
<real>0.9</real>
<real>0.9</real>
<real>0.0</real>
</array>
</dict>
<dict><!-- scanner zoom indicator -->
<key>alpha</key>
<real>1</real>
<key>selector</key>
<string>drawScannerZoomIndicator:</string>
<key>x</key>
<integer>-250</integer>
<key>y</key>
<integer>-190</integer>
<key>rgb_color</key>
<array>
<real>0.9</real>
<real>0.9</real>
<real>0.0</real>
</array>
</dict>
<dict><!-- compass -->
<key>alpha</key>
<real>1</real>
<key>selector</key>
<string>drawCompass:</string>
<key>x</key>
<integer>-180</integer>
<key>y</key>
<integer>-180</integer>
</dict>
<dict><!-- station aegis -->
<key>alpha</key>
<real>1</real>
<key>selector</key>
<string>drawAegis:</string>
<key>x</key>
<integer>-220</integer>
<key>y</key>
<integer>-180</integer>
</dict>
<dict><!-- ship's clock -->
<key>height</key>
<integer>11</integer>
<key>selector</key>
<string>drawClock:</string>
<key>width</key>
<integer>11</integer>
<key>x</key>
<integer>-258</integer>
<key>y</key>
<integer>-215</integer>
</dict>
<dict><!-- status indicator light, x and y give the location, the size defines the icon size -->
<key>height</key>
<integer>8</integer>
<key>selector</key>
<string>drawStatusLight:</string>
<key>width</key>
<integer>8</integer>
<key>x</key>
<integer>-250</integer>
<key>y</key>
<integer>-150</integer>
</dict>
<dict><!-- fuel scoop status -->
<key>alpha</key>
<real>1</real>
<key>selector</key>
<string>drawScoopStatus:</string>
<key>x</key>
<integer>-250</integer>
<key>y</key>
<integer>-170</integer>
</dict>
<dict><!-- missile display, x and y give the location, the x-spacing is given by spacing, the size defines the icon size -->
<key>height</key>
<integer>10</integer>
<key>selector</key>
<string>drawMissileDisplay:</string>
<key>spacing</key>
<integer>12</integer>
<key>width</key>
<integer>10</integer>
<key>x</key>
<integer>-245</integer>
<key>y</key>
<string>-220</string>
</dict>
<dict><!-- forward shield bar -->
<key>draw_surround</key>
<true/>
<key>height</key>
<integer>45</integer>
<key>selector</key>
<string>drawForwardShieldBar:</string>
<key>width</key>
<integer>6</integer>
<key>x</key>
<integer>172</integer>
<key>y</key>
<integer>-152</integer>
</dict>
<dict><!-- aft shield bar -->
<key>draw_surround</key>
<true/>
<key>height</key>
<integer>45</integer>
<key>selector</key>
<string>drawAftShieldBar:</string>
<key>width</key>
<integer>6</integer>
<key>x</key>
<integer>172</integer>
<key>y</key>
<integer>-204</integer>
</dict>
<dict><!-- energy guage, can draw a surround 2 units out from the dial size specified -->
<key>draw_surround</key>
<true/>
<key>height</key>
<integer>96</integer>
<key>selector</key>
<string>drawEnergyGauge:</string>
<key>width</key>
<integer>6</integer>
<key>x</key>
<integer>185</integer>
<key>y</key>
<integer>-178</integer>
<key>labelled</key>
<false/>
</dict>
<dict><!-- speed bar, can draw a surround 2 units out from the dial size specified -->
<key>draw_surround</key>
<true/>
<key>height</key>
<integer>97</integer>
<key>selector</key>
<string>drawSpeedBar:</string>
<key>width</key>
<integer>6</integer>
<key>x</key>
<integer>198</integer>
<key>y</key>
<integer>-178</integer>
</dict>
<dict><!--stick sensitivity indicator-->
<key>alpha</key>
<real>1.0</real>
<key>selector</key>
<string>drawStickSensitivityIndicator:</string>
<key>x</key>
<integer>-200</integer>
<key>y</key>
<integer>-160</integer>
<key>height</key>
<integer>8</integer>
<key>width</key>
<integer>8</integer>
</dict>
<dict><!--Roll, Pitch and Yaw-->
<key>draw_surround</key>
<true/>
<key>height</key>
<integer>5</integer>
<key>width</key>
<integer>25</integer>
<key>selector</key>
<string>drawRollBar:</string>
<key>x</key>
<integer>-180</integer>
<key>y</key>
<integer>-200</integer>
</dict>
<dict>
<key>draw_surround</key>
<true/>
<key>height</key>
<integer>5</integer>
<key>width</key>
<integer>25</integer>
<key>selector</key>
<string>drawYawBar:</string>
<key>x</key>
<integer>-180</integer>
<key>y</key>
<integer>-160</integer>
</dict>
<dict>
<key>draw_surround</key>
<true/>
<key>height</key>
<integer>25</integer>
<key>width</key>
<integer>5</integer>
<key>selector</key>
<string>drawPitchBar:</string>
<key>x</key>
<integer>-200</integer>
<key>y</key>
<integer>-180</integer>
</dict><!-- End RPY-->
<dict><!-- just draws a surround 2 units around the selected size, you could also use drawGreenSurround: -->
<key>height</key>
<integer>97</integer>
<key>selector</key>
<string>drawGreenSurround:</string>
<key>width</key>
<integer>33</integer>
<key>x</key>
<integer>224</integer>
<key>y</key>
<integer>-178</integer>
</dict>
<dict><!-- cabin temperature bar -->
<key>height</key>
<integer>97</integer>
<key>selector</key>
<string>drawCabinTempBar:</string>
<key>width</key>
<integer>6</integer>
<key>x</key>
<integer>210</integer>
<key>y</key>
<integer>-178</integer>
</dict>
<dict><!-- weapon temperature bar -->
<key>height</key>
<integer>97</integer>
<key>selector</key>
<string>drawWeaponTempBar:</string>
<key>width</key>
<integer>6</integer>
<key>x</key>
<integer>219</integer>
<key>y</key>
<integer>-178</integer>
</dict>
<dict><!-- fuel bar -->
<key>height</key>
<integer>97</integer>
<key>selector</key>
<string>drawFuelBar:</string>
<key>width</key>
<integer>6</integer>
<key>x</key>
<integer>228</integer>
<key>y</key>
<integer>-178</integer>
</dict>
<dict><!-- altitude bar -->
<key>height</key>
<integer>97</integer>
<key>selector</key>
<string>drawAltitudeBar:</string>
<key>width</key>
<integer>6</integer>
<key>x</key>
<integer>237</integer>
<key>y</key>
<integer>-178</integer>
</dict>
<dict><!-- fps counter, x and y give the location, the size defines the character size -->
<key>height</key>
<integer>18</integer>
<key>selector</key>
<string>drawFPSInfoCounter:</string>
<key>width</key>
<integer>18</integer>
<key>x</key>
<integer>-300</integer>
<key>y</key>
<integer>220</integer>
</dict>
</array>
<key>legends</key><!-- these are drawn, in order, before the dials, add any other images you want here -->
<array>
<!-- LHS -->
<dict>
<key>text</key>
<string>NRG</string>
<key>x</key>
<integer>179</integer>
<key>y</key>
<string>-128</string>
<key>height</key>
<integer>10</integer>
<key>width</key>
<integer>6</integer>
</dict>
<dict>
<key>text</key>
<string>SPD</string>
<key>x</key>
<integer>192</integer>
<key>y</key>
<string>-128</string>
<key>height</key>
<integer>10</integer>
<key>width</key>
<integer>6</integer>
</dict>
<dict>
<key>text</key>
<string>FL</string>
<key>x</key>
<integer>225</integer>
<key>y</key>
<string>-128</string>
<key>height</key>
<integer>10</integer>
<key>width</key>
<integer>6</integer>
</dict>
<dict>
<key>text</key>
<string>CT</string>
<key>x</key>
<integer>205</integer>
<key>y</key>
<string>-128</string>
<key>height</key>
<integer>10</integer>
<key>width</key>
<integer>6</integer>
</dict>
<dict>
<key>text</key>
<string>WT</string>
<key>x</key>
<integer>214</integer>
<key>y</key>
<string>-128</string>
<key>height</key>
<integer>10</integer>
<key>width</key>
<integer>6</integer>
</dict>
<dict>
<key>text</key>
<string>AL</string>
<key>x</key>
<integer>234</integer>
<key>y</key>
<string>-128</string>
<key>height</key>
<integer>10</integer>
<key>width</key>
<integer>6</integer>
</dict>
<dict>
<key>text</key>
<string>SLD</string>
<key>x</key>
<integer>166</integer>
<key>y</key>
<string>-128</string>
<key>height</key>
<integer>10</integer>
<key>width</key>
<integer>6</integer>
</dict>
<!-- images -->
<dict><!-- Dial block underlay -->
<key>image</key>
<string>dialglas.png</string>
<key>height</key>
<integer>101</integer>
<key>width</key>
<integer>76</integer>
<key>x</key>
<integer>205</integer>
<key>y</key>
<integer>-178</integer>
<key>alpha</key>
<real>1.00</real>
</dict>
<dict><!-- Roll underlay -->
<key>image</key>
<string>ryphoriglas.png</string>
<key>height</key>
<integer>8</integer>
<key>width</key>
<integer>28</integer>
<key>x</key>
<integer>-180</integer>
<key>y</key>
<integer>-200</integer>
<key>alpha</key>
<real>1.00</real>
</dict>
<dict><!-- Yaw underlay -->
<key>image</key>
<string>ryphoriglas.png</string>
<key>height</key>
<integer>8</integer>
<key>width</key>
<integer>28</integer>
<key>x</key>
<integer>-180</integer>
<key>y</key>
<integer>-160</integer>
<key>alpha</key>
<real>1.00</real>
</dict>
<dict><!-- Pitch underlay -->
<key>image</key>
<string>rypvertglas.png</string>
<key>height</key>
<integer>28</integer>
<key>width</key>
<integer>8</integer>
<key>x</key>
<integer>-200</integer>
<key>y</key>
<integer>-180</integer>
<key>alpha</key>
<real>1.00</real>
</dict>
<dict><!-- compass underlay -->
<key>image</key>
<string>compassglas.png</string>
<key>width</key>
<real>29</real>
<key>height</key>
<real>29</real>
<key>x</key>
<integer>-180</integer>
<key>y</key>
<integer>-180</integer>
<key>alpha</key>
<real>1.00</real>
</dict>
<dict><!-- radar underlay -->
<key>image</key>
<string>radarglas.png</string>
<key>width</key>
<real>330</real>
<key>height</key>
<real>115</real>
<key>x</key>
<integer>0</integer>
<key>y</key>
<integer>-180</integer>
<key>alpha</key>
<real>1.00</real>
</dict>
<!-- gun pipper graphics follow. Four seperate elements combine to make up the pipper. -->
<dict><!-- gun pipper element: Conraster. Contrast enhancement can make distant or dark objects easier to see. This can be really useful on older low-contrast monitors, and/or older eyes. -->
<key>height</key>
<integer>140</integer>
<key>width</key>
<integer>140</integer>
<key>image</key>
<string>contraster.png</string>
<key>x</key>
<integer>0</integer>
<key>y</key>
<integer>0</integer>
<key>alpha</key>
<real>0.25</real><!-- Use an alpha of 0.0 to turn this element off. Default: 0.25 -->
</dict>
<dict><!-- gun pipper element: The central long-range sniper's dot -->
<key>height</key>
<integer>32</integer>
<key>width</key>
<integer>32</integer>
<key>image</key>
<string>reddot.png</string>
<key>x</key>
<integer>0</integer>
<key>y</key>
<integer>0</integer>
<key>alpha</key>
<real>0.75</real><!-- Use an alpha of 0.0 to turn this element off. Default: 0.75 -->

</dict>
</array>
</dict>
</plist>



but either nothing happens, or the entire HUD dissappears.

the two oxp'x (mil hud & CB hud) appear to use different formats, no?

Re: moving the onscreen messages to the side

Posted: Sun Sep 25, 2011 2:44 am
by CommonSenseOTB
Yeah, that's right. You can't mix XML and OpenStep. You'll have to covert it to XML. All my stuff is OpenStep or I'd post an XML version for you. When it's converted, be sure to place it at the same level as target reticle sensitive in the hud.plist. It won't work if it is in the dials or legends portion of the hud.plist.

XML conversion to OpenStep, looks like your fun is just beginning. Wasn't there a utility on the board recently for doing conversions? Maybe you can avoid that by doing it yourself by hand or maybe someone out there has that piece of code available in XML and can post it for you to copy. Cheers! :)

Re: moving the onscreen messages to the side

Posted: Sun Sep 25, 2011 1:08 pm
by Pluisje
Sorry to join this topic so late. I just realised I have what you need. In my version of the MilHUD I inserted the following right after the first <dict> in the green, yellow and red plists.

Code: Select all

	<key>comm_log_gui</key>
	<dict>
		<key>alpha</key>
		<string>0.65</string>
		<key>height</key>
		<string>160</string>
		<key>row_height</key>
		<string>12</string>
		<key>width</key>
		<string>210</string>
	</dict>
	<key>message_gui</key>
	<dict>
		<key>alpha</key>
		<string>0.85</string>
		<key>height</key>
		<string>160</string>
		<key>row_height</key>
		<string>12</string>
		<key>width</key>
		<string>210</string>
		<key>x</key>
		<string>-250</string>
		<key>y</key>
		<string>-50</string>
	</dict>
Adjust the numbers to taste..

Re: moving the onscreen messages to the side

Posted: Sun Sep 25, 2011 3:34 pm
by Yodeebe
Aww, brilliant.
Thanks very much.
it looks so simple once you know how.

Re: moving the onscreen messages to the side

Posted: Sun Sep 25, 2011 3:53 pm
by CommonSenseOTB
Good job, Pluisje! Now others can refer to this viewtopic for the XML version of that piece of code. :D

Re: moving the onscreen messages to the side

Posted: Sat Oct 01, 2011 6:17 pm
by SandJ
Any chance of an Idiot's Guide?

I am using whatever HUD comes with the game and have tried to work out what I should edit so I can move messages from my line of sight but cannot work out what to edit.

Re: moving the onscreen messages to the side

Posted: Sat Oct 01, 2011 6:35 pm
by Yodeebe
I'm an idiot, so I'll guide you if you like? :D

1st, choose a hud.

http://wiki.alioth.net/index.php/Category:HUDs_OXPs

Re: moving the onscreen messages to the side

Posted: Sat Oct 01, 2011 10:58 pm
by SandJ
Yodeebe wrote:
I tried a couple of those and got to the Console HUD which puts the messages on the left ... so that has fixed the problem, without me changing any .plist files.

Hurrah for idiots!

Re: moving the onscreen messages to the side

Posted: Sun Oct 02, 2011 9:43 am
by Yodeebe
Capt. Beatnik's 'CB Hud' is also very nice, & has messages off to the side too, if you prefer the black/transparent background type thing.

http://www.box.net/shared/y1q8yegurud6lr5v9bd7