CybrWb@Posted: Fri Jan 11, 2013 3:45 pm :
Ok, I'm just going to come out and say it. This game is 9 years old and I have been editing levels for a total of 48 hours.

Now that thats out of the way, here is my problem.

I get how to make a simple unlock panel for a door,

Quote:
*Trigger Doors - Use Monitor GUI to open Doors

To start off, create a door (func_door; see above Sliding Doors tutorial).
Then add a model with a monitor:
Right-click on 2D view and select func, func_static (or select New Model...).
In Entity tab (N-key) click the Model... button.
In the dialog pick e.g. base/models/mapobjects/com/platguistand/my_platguistand.lwo (or any other model with a computer monitor).
Close Dialog with OK.
Position the GUIstand in your map e.g. near your door, keep model selected.
Open Entity tab (N-key), click the Gui... button.
In the dialog pick e.g. base/guis/commoutside/co_unlock.gui to unlock a door. Close dialog.
Now link the trigger monitor model to the door: Deselect everything (Esc), select the model first (Shift+Left-click), then select the door, and press Ctrl+K.
Finally deselect everything (Esc) and only select the door.
In the Entity tab (N-key) you will want to change several door properties:
Add Key "no_touch" with Val "1"
Add Key "toggle" with Val "1"
Tip: Read up on all the other parameters in the Entity tab.


That's all well and good. In my case, instead of using your standard techdrpanel1.lwo I decided I wanted to use a modconsole4.lwo

which has 3 Entity GUI's
GUI (Middle Screen)
GUI2(tiny screen end)
GUI3(Large screen right side)

Now as long as I make GUI(Middle) the screen in which I have to add areakeypad.gui is perfect, I add my parameter I can't figure out how to run the same thing but on Entity GUI 3 instead.

If i try and edit the keyval's from KEY: gui_parm1-4 VAL: #(<1--w/e number), to KEY: gui3_parm1-4 VAL: # I get nothing, infact when i load and check the console it say Unable to load gui: "#" (<-- again # being w/e value I enter) you would think logically it would work right? For the record im not completely clueless, I'm 27 and have dicked around on computers since I was 5 so So cut me some slack here.

I wander is this even possible or am I just running myself around in circles? I've been all over the net for the past 5 hours and can't seem to find this anywhere. I noticed there are still SOME people around on here, hopefully you can help. Sorry I dont have screenshots I know its a pain but if you need me to clarify I will.

Idid everything here step by step exept instead of using the keypad model I want to use a particular screen on the modconsole4.lwo model

*EDIT: Here is a picture of what Im trying to do.



voldemort@Posted: Fri Jan 11, 2013 4:57 pm :
You can allways cheat reduce your grid to the smallest integer and place a patch mesh with the gui right over where you want it and then turn it into a func static or whatever else kind of entity you want should work then



CybrWb@Posted: Fri Jan 11, 2013 6:11 pm :
I see what your saying but, I was really hoping to just take this one step at a time, besides, like I said, there really is no logical reason that I can see why this shouldn't just work, I have to assume there is something stupid easy I'm doing wrong.



S@TaNiC@Posted: Sat Jan 12, 2013 4:21 pm :
Although you can have multiple GUI's on an entity the gui_parm's are just variables and are per entity, stored on the entity as KV pairs. These KV's can be set ( .setKey("gui_parm1") for example) and all the GUI's on that entity will show the changes.

If using .setGuiParm then the variables are passed straight to all GUI's on the entity and no KV's are updated. If you need to keep a record of the current value update a KV on the entity that you can recall, either from the script .setKey or from the GUI's code set "cmd" "setkeyval myGuiEntity myvariable 0"

Say you have an entity (func_static) with two of exactly the same GUI's on it but want them to work individually of each other then you will need to rewrite a second copy of the GUI using different variables. You cant specifiy to what GUI the variables are applied.


Hope that makes sense :) my heads swimming with flu at the moment.



CybrWb@Posted: Sun Jan 13, 2013 5:49 am :
Oh man that sucks, feel better soon. :)

Ok well, the most important thing i got from that was the key gui_parm# applies to ALL guis on one entity correct? No matter weather its gui, gui2,gui3 etc? If thats case then here is my dilemma.

This is my entity info for my func_static, It's a three panel computer console.

classname func_static
name func_static_3
origin 1624 -1672 8
model model/mapobjects/com/modconsole4.lwo
angle 180
gui guis/screens/malfunction2.gui
gui2 guis/screens/craked2.gui
gui3 guis/doors/areakeypad.gui
gui_parm1 2
gui_parm2 3
gui_parm3 5
gui_parm4 Restore Power
target func_door_1

Now as I have written above, areakeypad.gui is on gui3, when I compile and enter the game the gui shows up, but the parameters arn't applied to it and the screen is noninteractive. Yet if place areakeypad.gui on gui1 everything works out just fine. I want it on screen 3 not screen 1. I haven't gotten into scripting yet, like I said, I'm just starting, Is there no way to accomplish this in the editor? Ive included a photo. ignor the parameters numbers in the photo, I was messing around and forgot to change them back to 1 2 3 & 4, so I know thats not the problem.

Attachment:
Untitled.jpg
Untitled.jpg [ 160.58 KB | Viewed 32 times ]



S@TaNiC@Posted: Sun Jan 13, 2013 9:42 am :
Ok thats wierd ive never noticed that behaviour before but apparently having a gui in the first gui slot (as in gui rather than gui2 gui3 etc) with no action on it cancels out any ability for the others to work.

Making a copy of malfunction2.gui and adding an onAction{} in the first windowDef will fix it for you.
Code:
windowDef Desktop {
  rect      0 ,0 ,640 ,480
  backcolor   0 ,0 ,0 ,0
  nocursor 1
 
  onAction{}

  windowDef faceTest {


The only difference this will make is it will bleep when your view passes over the malfunction gui as if its an active gui although there will be no cursor as per the windowDef. The only other way to possibly fix this behaviour would be to redefine the textures in the model so Entity Gui is where you want it.



CybrWb@Posted: Sun Jan 13, 2013 10:15 am :
you sir are an amazing person.... I can't thank you enough, this has been buggin me for 3 days. I added the onAction{} to the gui and now everything is SUPERB!!!! Now If I can just figure out why the editor is randomly tripling up all my entities and brushes, etc. :shock:

A quick follow up about the second idea you mentioned, If I wanted to redifene the textures in the model, I would need a 3D editing program like Blender right? Also like I said I'm so new at this it's stupid, assume I wanted to start adding custom things to the game, Aside form said 3D Modeling program, does DoomEdit have everything I need to I see a lot of mentions of various programs and what not from other users, and while I have come accross a wealth of information on this site, a lot of the tutorial links and what not are outdated and missing I have managed to download the CleanPaks and SDK3 (with absolutly NO idea how to use that, or what it does.) this is just a hobby for me at the moment and I have no real programming or art skill, but you have to start somewhere and I just want to make sure im doing it right. Thanks for you help man I appreciate it.



S@TaNiC@Posted: Sun Jan 13, 2013 4:24 pm :
Quote:
A quick follow up about the second idea you mentioned, If I wanted to redifene the textures in the model, I would need a 3D editing program like Blender right?


Depending on what type the model is, .lwo needs to be redone through a modeling program .ase can just be changed by opening up the file in a text editor.

Quote:
Aside form said 3D Modeling program, does DoomEdit have everything I need


1. Cleanpaks
2. A decent text editor with line numbers and the option for syntax highlighting. UltraEdit, Notepad++ etc
3. A grep tool. WindowsGrep
4. Some kind of image editor. Gimp, Photoshop
5. A modeling program. Blender, Max
6. Maybe a sound editing program. Audacitiy
7. A link to ModWiki or the CHM help file and ID's info page.
7. A decent text editor and grep tool :)
8. Oh and a grep tool (cant stress enough how useful one is) :D

If you have the room copy all the pk4 files some where and extract them so you can search through them with the grep tool. This will make life so much easier being able to get to all the files and searching for references/see how ID done it.

To be honest until your pretty confident with knowing how all the files work together and have done lots of scripting, up untill the point youve found theres stuff you cant do with the above i wouldnt even worry about the SDK.



CybrWb@Posted: Sun Jan 13, 2013 7:25 pm :
Yeah I'll leave SDK To the pros, thats a little over my head. For the hell of it I d/l SikkMod, as I understand it they did qute a bit of work on the textures and what not, Would I be correct in assuming that they used the cleanpaks to do that, if so I imagine I dont need BOTH Sikkmod AND the cleanpaks. As for the rest.


1. Cleanpaks <--Done and Done.
2. A decent text editor with line numbers and the option for syntax highlighting. UltraEdit, Notepad++ etc <--- I got ConTEXT
3. A grep tool. WindowsGrep <--- Ok.
4. Some kind of image editor. Gimp, Photoshop <--- Will do.
5. A modeling program. Blender, Max <--- I have Blender but I dont see .lwo as supported under Import. perhaps I'll try 3dMax
6. Maybe a sound editing program. Audacitiy <--- I'll worry bout that when I get there.
7. A link to ModWiki or the CHM help file and ID's info page. <-- It' my understanding that ModWiki is still down, can't wait though.

Oh and what are your thoughts on me downloading a Grep tool? Just curious. :mrgreen::mrgreen::mrgreen:



CybrWb@Posted: Fri Jan 11, 2013 3:45 pm :
Ok, I'm just going to come out and say it. This game is 9 years old and I have been editing levels for a total of 48 hours.

Now that thats out of the way, here is my problem.

I get how to make a simple unlock panel for a door,

Quote:
*Trigger Doors - Use Monitor GUI to open Doors

To start off, create a door (func_door; see above Sliding Doors tutorial).
Then add a model with a monitor:
Right-click on 2D view and select func, func_static (or select New Model...).
In Entity tab (N-key) click the Model... button.
In the dialog pick e.g. base/models/mapobjects/com/platguistand/my_platguistand.lwo (or any other model with a computer monitor).
Close Dialog with OK.
Position the GUIstand in your map e.g. near your door, keep model selected.
Open Entity tab (N-key), click the Gui... button.
In the dialog pick e.g. base/guis/commoutside/co_unlock.gui to unlock a door. Close dialog.
Now link the trigger monitor model to the door: Deselect everything (Esc), select the model first (Shift+Left-click), then select the door, and press Ctrl+K.
Finally deselect everything (Esc) and only select the door.
In the Entity tab (N-key) you will want to change several door properties:
Add Key "no_touch" with Val "1"
Add Key "toggle" with Val "1"
Tip: Read up on all the other parameters in the Entity tab.


That's all well and good. In my case, instead of using your standard techdrpanel1.lwo I decided I wanted to use a modconsole4.lwo

which has 3 Entity GUI's
GUI (Middle Screen)
GUI2(tiny screen end)
GUI3(Large screen right side)

Now as long as I make GUI(Middle) the screen in which I have to add areakeypad.gui is perfect, I add my parameter I can't figure out how to run the same thing but on Entity GUI 3 instead.

If i try and edit the keyval's from KEY: gui_parm1-4 VAL: #(<1--w/e number), to KEY: gui3_parm1-4 VAL: # I get nothing, infact when i load and check the console it say Unable to load gui: "#" (<-- again # being w/e value I enter) you would think logically it would work right? For the record im not completely clueless, I'm 27 and have dicked around on computers since I was 5 so So cut me some slack here.

I wander is this even possible or am I just running myself around in circles? I've been all over the net for the past 5 hours and can't seem to find this anywhere. I noticed there are still SOME people around on here, hopefully you can help. Sorry I dont have screenshots I know its a pain but if you need me to clarify I will.

Idid everything here step by step exept instead of using the keypad model I want to use a particular screen on the modconsole4.lwo model

*EDIT: Here is a picture of what Im trying to do.



voldemort@Posted: Fri Jan 11, 2013 4:57 pm :
You can allways cheat reduce your grid to the smallest integer and place a patch mesh with the gui right over where you want it and then turn it into a func static or whatever else kind of entity you want should work then



CybrWb@Posted: Fri Jan 11, 2013 6:11 pm :
I see what your saying but, I was really hoping to just take this one step at a time, besides, like I said, there really is no logical reason that I can see why this shouldn't just work, I have to assume there is something stupid easy I'm doing wrong.



S@TaNiC@Posted: Sat Jan 12, 2013 4:21 pm :
Although you can have multiple GUI's on an entity the gui_parm's are just variables and are per entity, stored on the entity as KV pairs. These KV's can be set ( .setKey("gui_parm1") for example) and all the GUI's on that entity will show the changes.

If using .setGuiParm then the variables are passed straight to all GUI's on the entity and no KV's are updated. If you need to keep a record of the current value update a KV on the entity that you can recall, either from the script .setKey or from the GUI's code set "cmd" "setkeyval myGuiEntity myvariable 0"

Say you have an entity (func_static) with two of exactly the same GUI's on it but want them to work individually of each other then you will need to rewrite a second copy of the GUI using different variables. You cant specifiy to what GUI the variables are applied.


Hope that makes sense :) my heads swimming with flu at the moment.



CybrWb@Posted: Sun Jan 13, 2013 5:49 am :
Oh man that sucks, feel better soon. :)

Ok well, the most important thing i got from that was the key gui_parm# applies to ALL guis on one entity correct? No matter weather its gui, gui2,gui3 etc? If thats case then here is my dilemma.

This is my entity info for my func_static, It's a three panel computer console.

classname func_static
name func_static_3
origin 1624 -1672 8
model model/mapobjects/com/modconsole4.lwo
angle 180
gui guis/screens/malfunction2.gui
gui2 guis/screens/craked2.gui
gui3 guis/doors/areakeypad.gui
gui_parm1 2
gui_parm2 3
gui_parm3 5
gui_parm4 Restore Power
target func_door_1

Now as I have written above, areakeypad.gui is on gui3, when I compile and enter the game the gui shows up, but the parameters arn't applied to it and the screen is noninteractive. Yet if place areakeypad.gui on gui1 everything works out just fine. I want it on screen 3 not screen 1. I haven't gotten into scripting yet, like I said, I'm just starting, Is there no way to accomplish this in the editor? Ive included a photo. ignor the parameters numbers in the photo, I was messing around and forgot to change them back to 1 2 3 & 4, so I know thats not the problem.

Attachment:
Untitled.jpg
Untitled.jpg [ 160.58 KB | Viewed 32 times ]



S@TaNiC@Posted: Sun Jan 13, 2013 9:42 am :
Ok thats wierd ive never noticed that behaviour before but apparently having a gui in the first gui slot (as in gui rather than gui2 gui3 etc) with no action on it cancels out any ability for the others to work.

Making a copy of malfunction2.gui and adding an onAction{} in the first windowDef will fix it for you.
Code:
windowDef Desktop {
  rect      0 ,0 ,640 ,480
  backcolor   0 ,0 ,0 ,0
  nocursor 1
 
  onAction{}

  windowDef faceTest {


The only difference this will make is it will bleep when your view passes over the malfunction gui as if its an active gui although there will be no cursor as per the windowDef. The only other way to possibly fix this behaviour would be to redefine the textures in the model so Entity Gui is where you want it.



CybrWb@Posted: Sun Jan 13, 2013 10:15 am :
you sir are an amazing person.... I can't thank you enough, this has been buggin me for 3 days. I added the onAction{} to the gui and now everything is SUPERB!!!! Now If I can just figure out why the editor is randomly tripling up all my entities and brushes, etc. :shock:

A quick follow up about the second idea you mentioned, If I wanted to redifene the textures in the model, I would need a 3D editing program like Blender right? Also like I said I'm so new at this it's stupid, assume I wanted to start adding custom things to the game, Aside form said 3D Modeling program, does DoomEdit have everything I need to I see a lot of mentions of various programs and what not from other users, and while I have come accross a wealth of information on this site, a lot of the tutorial links and what not are outdated and missing I have managed to download the CleanPaks and SDK3 (with absolutly NO idea how to use that, or what it does.) this is just a hobby for me at the moment and I have no real programming or art skill, but you have to start somewhere and I just want to make sure im doing it right. Thanks for you help man I appreciate it.



S@TaNiC@Posted: Sun Jan 13, 2013 4:24 pm :
Quote:
A quick follow up about the second idea you mentioned, If I wanted to redifene the textures in the model, I would need a 3D editing program like Blender right?


Depending on what type the model is, .lwo needs to be redone through a modeling program .ase can just be changed by opening up the file in a text editor.

Quote:
Aside form said 3D Modeling program, does DoomEdit have everything I need


1. Cleanpaks
2. A decent text editor with line numbers and the option for syntax highlighting. UltraEdit, Notepad++ etc
3. A grep tool. WindowsGrep
4. Some kind of image editor. Gimp, Photoshop
5. A modeling program. Blender, Max
6. Maybe a sound editing program. Audacitiy
7. A link to ModWiki or the CHM help file and ID's info page.
7. A decent text editor and grep tool :)
8. Oh and a grep tool (cant stress enough how useful one is) :D

If you have the room copy all the pk4 files some where and extract them so you can search through them with the grep tool. This will make life so much easier being able to get to all the files and searching for references/see how ID done it.

To be honest until your pretty confident with knowing how all the files work together and have done lots of scripting, up untill the point youve found theres stuff you cant do with the above i wouldnt even worry about the SDK.



CybrWb@Posted: Sun Jan 13, 2013 7:25 pm :
Yeah I'll leave SDK To the pros, thats a little over my head. For the hell of it I d/l SikkMod, as I understand it they did qute a bit of work on the textures and what not, Would I be correct in assuming that they used the cleanpaks to do that, if so I imagine I dont need BOTH Sikkmod AND the cleanpaks. As for the rest.


1. Cleanpaks <--Done and Done.
2. A decent text editor with line numbers and the option for syntax highlighting. UltraEdit, Notepad++ etc <--- I got ConTEXT
3. A grep tool. WindowsGrep <--- Ok.
4. Some kind of image editor. Gimp, Photoshop <--- Will do.
5. A modeling program. Blender, Max <--- I have Blender but I dont see .lwo as supported under Import. perhaps I'll try 3dMax
6. Maybe a sound editing program. Audacitiy <--- I'll worry bout that when I get there.
7. A link to ModWiki or the CHM help file and ID's info page. <-- It' my understanding that ModWiki is still down, can't wait though.

Oh and what are your thoughts on me downloading a Grep tool? Just curious. :mrgreen::mrgreen::mrgreen: