Jump to content

A way to add tracks?


Recommended Posts

21 minutes ago, South8028 said:

-> Tested in game, works like a charm now.

Re drawings / icons: Cool.

Re LED panels: Very cool.

To show signal strength, LED panel require 11 static states. 0 => all leds dark, 1 => O---------, 2= OO--------, 3= OOO-------, ... , 10= OOOOOOOOOO.
I will calculate signal strength in percent, based on distance from nearest transmitter/repeater and transmitter/repeater range. Percent strength can then be indicated on LED panel, in steps of 10. For transmitter with unlimited range, script can show fixed value of say 80 percent.


 

  • Like 1
Link to comment
Share on other sites

2 minutes ago, niston said:

-> Tested in game, works like a charm now.

Re drawings / icons: Cool.

Re LED panels: Very cool.

To show signal strength, LED panel require 11 static states. 0 => all leds dark, 1 => O---------, 2= OO--------, 3= OOO-------, ... , 10= OOOOOOOOOO.
I will calculate signal strength in percent, based on distance from transmitter and transmitter range.
Percent can then be shown on LED panel, in steps of 10.


 

Great. I placed all the LED panels on uv for uv animation. It will be beautiful if they are all somehow involved. 2 scales for step-by-step filling, one scale for the “running” LED. Today I will finish the uv and I will need to think about integrating your counter into the model. I haven't looked at how to integrate it yet. I mean, I understood the theory, but I didn’t try to release it.

  • Like 1
Link to comment
Share on other sites

Before concluding with IC150: We will need to repurpose some of the remaining controls.

The row of buttons next to the power button.

Where it says MONITOR, it shall read SETUP, centered across the first 3 buttons from left:
* TAPE1 becomes AMPLIFIER
* TAPE2 becomes SOURCES
* LOW becomes SPEAKERS

These 3 buttons would be removed from the base NIF and in their place, working buttons would be spawned. They would operate differently to the power button. They all would have two animation states: #1static state called "Idle" which is button at rest/not pressed. And #2 actual animation of button being pushed and immediately releasing again, called "Activate". One NIF can be shared by all 3 of these buttons. They would bring up configuration menus when pushed.

FILTERS would be erased. Under the remaining button should be written MUTE, HIGH above it can be erased.
POWER button NIF can be reused for MUTE function, they operate in the same fashion (push -> on, push again -> off).

If we have MUTE function, we should also add a yellow indicator light for it, immediately to the right of the red power light.

I will start making scripts for power button now.

Link to comment
Share on other sites

1 hour ago, niston said:

Before concluding with IC150: We will need to repurpose some of the remaining controls.

The row of buttons next to the power button.

Where it says MONITOR, it shall read SETUP, centered across the first 3 buttons from left:
* TAPE1 becomes AMPLIFIER
* TAPE2 becomes SOURCES
* LOW becomes SPEAKERS

These 3 buttons would be removed from the base NIF and in their place, working buttons would be spawned. They would operate differently to the power button. They all would have two animation states: #1static state called "Idle" which is button at rest/not pressed. And #2 actual animation of button being pushed and immediately releasing again, called "Activate". One NIF can be shared by all 3 of these buttons. They would bring up configuration menus when pushed.

FILTERS would be erased. Under the remaining button should be written MUTE, HIGH above it can be erased.
POWER button NIF can be reused for MUTE function, they operate in the same fashion (push -> on, push again -> off).

If we have MUTE function, we should also add a yellow indicator light for it, immediately to the right of the red power light.

I will start making scripts for power button now.

All. Finished modeling the tuner, finished uv. The result was probably the most complex model, oddly enough. It looks simple, but it has a lot of small details. Then I'll do these additional amplifier buttons tomorrow. It's night for me. 🙂 It would be nice if you drew a simple drawing with all these inscriptions... Where each inscription should be.

 

TunerB.jpg

TunerF.jpg

  • Like 1
Link to comment
Share on other sites

I fully implemented Control Amplifier UI script in first version and all the controls we want to use (minus the config buttons and mute stuff) are functional and their settings persisted. The UI script also reacts to power (wireless for now) availability and power button setting (on/off) and updates the power indicator. For the controls, I made RotaryControl script, PushSwitch script and IndicatorLight script. All controls animate properly, but do not play sound effects yet (I have not checked for or created suitable fx soundfiles either at this point).

Some feedback:

* Power Indicator glow map does not work for some reason. Looking in nifskope, I noticed that BSLightningShaderProperty for Indicator:0 TriShape does not have "Glow Map" shader flag set. I tried setting the shader flag, but then the game just CTD when spawning the indicator light. Not sure what's going on - But as you can see, instead of using glowmap, the whole mesh is rendered at emissive color (#ffffffff) when playing ON animation:

Spoiler

ayfG0HM.png

@ChuckYufarley remember what I said about small controls? Look at picture above - Crosshair (dot) is smack dab in the middle of the Power button, but no activation prompt appears. Fiddling around with the mouse, or moving the PC to the right a bit, it sometimes becomes activatable - But it's very cumbersome and mostly tedious to target from seemingly anywhere but a 90° straight ahead angle. Perhaps its because these buttons are really very small? @South8028 Maybe increase the size of the entire row of buttons a bit, for better User eXperience?

* Also User eXperience related: Perhaps the indicator lights should be a bit larger as well. Absolutely love the little icon for the power light, but it's hard to even notice without looking very close, due to the small size of the indicator. Perhaps scale x1.1 or x1.2 will do just fine without looking too odd.

* IC150 Base nif is missing REF_ATTACH_NODE NiNode.

 

Next step for me: Making actual Preamp script and get Network stuff setup. Sending fixed test sound source from control amp to speakers, for rendering. Getting volume control on amp to actually adjust rendering volume on speakers.

Link to comment
Share on other sites

Posted (edited)
11 hours ago, niston said:

I fully implemented Control Amplifier UI script in first version and all the controls we want to use (minus the config buttons and mute stuff) are functional and their settings persisted. The UI script also reacts to power (wireless for now) availability and power button setting (on/off) and updates the power indicator. For the controls, I made RotaryControl script, PushSwitch script and IndicatorLight script. All controls animate properly, but do not play sound effects yet (I have not checked for or created suitable fx soundfiles either at this point).

Some feedback:

* Power Indicator glow map does not work for some reason. Looking in nifskope, I noticed that BSLightningShaderProperty for Indicator:0 TriShape does not have "Glow Map" shader flag set. I tried setting the shader flag, but then the game just CTD when spawning the indicator light. Not sure what's going on - But as you can see, instead of using glowmap, the whole mesh is rendered at emissive color (#ffffffff) when playing ON animation:

  Reveal hidden contents

ayfG0HM.png

@ChuckYufarley remember what I said about small controls? Look at picture above - Crosshair (dot) is smack dab in the middle of the Power button, but no activation prompt appears. Fiddling around with the mouse, or moving the PC to the right a bit, it sometimes becomes activatable - But it's very cumbersome and mostly tedious to target from seemingly anywhere but a 90° straight ahead angle. Perhaps its because these buttons are really very small? @South8028 Maybe increase the size of the entire row of buttons a bit, for better User eXperience?

* Also User eXperience related: Perhaps the indicator lights should be a bit larger as well. Absolutely love the little icon for the power light, but it's hard to even notice without looking very close, due to the small size of the indicator. Perhaps scale x1.1 or x1.2 will do just fine without looking too odd.

* IC150 Base nif is missing REF_ATTACH_NODE NiNode.

 

Next step for me: Making actual Preamp script and get Network stuff setup. Sending fixed test sound source from control amp to speakers, for rendering. Getting volume control on amp to actually adjust rendering volume on speakers.

Power button with a large collision, immediately with an indicator and AddOnNode. respectively NiNode for the power button. Do you really need those extra buttons in your amp? I think the simpler the better.

https://disk.yandex.ru/d/Q6d_3L1mkKPElQ

Then I will customize the indicator for you according to your wishes. Regardless of size, the light will be visible from any location. We just need to configure Light and AddOnNode correctly. All effects in ck.

Edited by South8028
Link to comment
Share on other sites

Begun work on SOUL protocol for NetLink:

Spoiler
; SOUL protocol identifiers
Int Property NETLINK_FRAMETYPE_SOUL = 8028 AutoReadOnly Hidden	; SOUL protocol uses netlink frametype 8028
Int Property PROTOCOL_VERSION = 1 AutoReadOnly Hidden			; SOUL protocol version


; SOUL error codes
Int Property ERROR_SOUL_NOTSTARTED = -3100 AutoReadOnly Hidden		; SOUL protocol not started
Int Property ERROR_SOUL_NOPOWER = -3101 AutoReadOnly Hidden			; SOUL device not powered
Int Property ERROR_SOUL_LINKLAYER = -3102 AutoReadOnly Hidden		; LinkLayer reference is unavailable

Int Property SOUL_FRAMETYPE = 8028 AutoReadonly Hidden
String Property SOUL_PACKET_MAGIC = "SOUL" Hidden				; SOUL packet magic
Int Property SOUL_PACKETTYPE_SINKCMD = 1 AutoReadonly Hidden	; SINK command packet

Int Property SOUL_DEVICETYPE_SOURCE = 1 AutoReadOnly Hidden		; SOURCE type SOUL device
Int Property SOUL_DEVICETYPE_CONTROL = 2 AutoReadOnly Hidden	; CONTROL type SOUL device
Int Property SOUL_DEVICETYPE_SINK = 3 AutoReadOnly Hidden		; SINK type SOUL device
Int Property SOUL_DEVICETYPE_REMOTE = 4 AutoReadOnly Hidden		; REMOTE type SOUL device

Int Property SOUL_SINKCMD_PB_CLEAR = 1 AutoReadOnly Hidden	; clear emitter on sink
Int Property SOUL_SINKCMD_PB_RADIO = 2 AutoReadOnly Hidden	; create radio emitter on sink (and clear any previously existing emitter)
Int Property SOUL_SINKCMD_PB_DESCR = 3 AutoReadOnly Hidden	; create descriptor emitter on sink (and clear any previously existing emitter)
Int Property SOUL_SINKCMD_UPD_VOL = 11 AutoReadOnly Hidden	; update emitter volume
Int Property SOUL_SINKCMD_UPD_POS = 12 AutoReadOnly Hidden	; update emitter playback position
Int Property SOUL_SINKCMD_SYNCREQ = 21 AutoReadOnly Hidden	; synchronization request from sink
Int Property SOUL_SINKCMD_PINGREQ = 22 AutoReadOnly Hidden	; ping request to sink
Int Property SOUL_SINKCMD_PINGRPL = 23 AutoReadOnly Hidden	; ping reply from sink
Int Property SOUL_SINKCMD_GOODBYE = 24 AutoReadOnly Hidden  ; final notification from destroyed/deleted sink

Struct SoulPacket
	Int Version
	String System
	Int PacketType
	Var Data
EndStruct

Struct SoulSinkCmd
	String Zone
	Int Command	
EndStruct

Struct SoulSinkCmdPbRadio
	String Zone
	Int Command	
	Float RadioFrequency
	Float EmitterVolumeL
	Float EmitterVolumeR
	Bool EmitterBoost
EndStruct

Struct SoulSinkCmdPbDescr
	String Zone
	Int Command
	Sound SoundDescriptor
	Int PlaybackPosition
	Float EmitterVolumeL
	Float EmitterVolumeR
	Bool EmitterBoost
EndStruct

Struct SoulSfSinkCmdUpdVol
	String Zone
	Int Command
	Float EmitterVolumeL
	Float EmitterVolumeR
	Bool EmitterBoost
EndStruct

Struct SoulSfSinkCmdUpdPos
	Int Version
	String System
	Int PacketType
	String Zone
	Int Command	
	Int PlaybackPosition
EndStruct

 

 

Link to comment
Share on other sites

1 hour ago, niston said:

What do you want me to do with the power button / indicator combo?
Also not sure what you mean by extra jacks?

Use instead of the power button and indicator. What's the point of using them separately? After all, the indicator only works when the power button is on. Together they will connect to the NiNode of the power button and will work. 

I meant additional buttons. Not jack.

You wrote yesterday that you need to make more buttons and change the labels. I asked, is there an absolute need for these buttons?

Link to comment
Share on other sites

  • Recently Browsing   1 member

×
×
  • Create New...