Jump to content
The Dark Mod Forums

Some entity properties not listed; which and why


Recommended Posts

@Tels: a few minor comments:

 

-For the recently added properties list, it says "but no set" instead of "but not set"

 

-One thing I noticed but never mentioned, is that (using Firefox, maximized or minimized) when I go to e.g. the entities list, then do a quick search ('/'), as I search for a phrase, while it does find it, it always jumps-to/selects the item one line below the current lowest view. I haven't seen this anywhere except here, but I don't know for sure if that means it is a Firefox problem or something with the scripts. Anyway, for example: entities list, do a quick search for "light", and note where it ends up. The last line showing in my browser is "blood_marker", which is exactly one line above "light". Wait a few seconds for the quick search line to disappear, and voila, there is the first line including "light." Hm, now that I describe it that way, it does sound like it's Firefox's fault (the quick search line obscures it), however, not noticing this behavior anywhere else, I'm thinking it is a problem with the site. For instance, if I go to bluesnews, and search for any word way down the page, the line always appears selected above the quick search bar. In a nutshell (because I'm rambling and making this more complicated than it should be): quick search on bloodgate puts the found result behind/obscured by the quick search bar. Other sites put the found result above the search bar, in full view.

 

Edit: Aha! I think I might understand why this is happening. The search returns the line properly, but the environment doesn't expect that extra line to exist ("© 2008 by The Dark Mod, ..." etc), so I believe that line is throwing the functionality off. Maybe the fact that it's not part of the table, but an extra line outside of it?

 

-When you click an entity link, rather than jumping to a page showing the properties for that ent from top down, it jumps to the bottom of the page, forcing you to scroll all the way up to see the "important" ones, the start of the list.

 

-Why doesn't frobable still appear for func_static? :wacko: I think I remember mention of it being defined in a place that doesn't support that... maybe I'm wrong. It's just that that's a very important one (obviously) so it's been serving as a truth test for this thus far, and still doesn't show.

 

Edit: Ah, yes here it is (if I understand correctly):

The problem here is that the lamp does not inherit from frobable_base. It inherits from static_light_unlit_base, which inherits from func_static, which inherits from entity_base. So all the properties listed in frobable_base are not available. Maybe we should shove it in between entity_base and func_static (or set the properties directly on the base class, most entities can be frobable anyway.)

So I guess it's that frobable should be defined elsewhere? Something I would definitely not tamper with (myself), but which should be changed I guess.

Link to post
Share on other sites
  • Replies 249
  • Created
  • Last Reply

Top Posters In This Topic

Top Posters In This Topic

Posted Images

@Tels: a few minor comments:

 

-For the recently added properties list, it says "but no set" instead of "but not set"

 

Fixed :) (I a notoriou fo droppin th las ke o word!)

 

-One thing I noticed but never mentioned, is that (using Firefox, maximized or minimized) when I go to e.g. the entities list, then do a quick search ('/'),

 

I also noticed that but couldn't find out why it happens. It looks like you are right in that the "footer" line obscures the found result, but I am not entirely sure how to fix that issue. Probably need to redesign the entire document layout for that...rats!

 

-When you click an entity link, rather than jumping to a page showing the properties for that ent from top down, it jumps to the bottom of the page, forcing you to scroll all the way up to see the "important" ones, the start of the list.

 

Uhm, that doesn't happen for me here with FF?

 

Does it also happen if you copy the URL, open a new tab, paste it in and press enter? What entity did you use as example?

 

-Why doesn't frobable still appear for func_static? :wacko:

 

Yes, frobable should be documented on atdm:entity_base, because I think you can frob every entity, it is just disabled for a lot of things like lights by default. func_static now inherits from atdm:entity_base, so moving the "editor_bool frobable" line to it would make it "work".

 

(OTOH, I don't know what happens if you enable frobable on an entity without a visual modle and the player tries to frob it. Would that even work? Allow only blind frob?)

 

Edit: I moved all 12 spawnarg documentations from atdm:frobable_base to atdm:entity_base because as far as I can see they apply to all entities, regardless of spawnclass.

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites

I documented a lot more spawnargs relating to AI and weapons now.

 

Also, the devel/inspect.pl script now generates markers (basically E(entityname)) when it sees 'entityname' in descriptions, and the GUI then creates links from them. One example is:

 

http://www.bloodgate.com/mirrors/tdm/pub/d...awnarg-def_ammo

 

Edit:

 

Some more doc added, and fixed a bug, spawnargs with an empty value were missing from the list. See here for an example:

 

http://www.bloodgate.com/mirrors/tdm/pub/d...active_surfaces

 

Enjoy :)

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites
Uhm, that doesn't happen for me here with FF?

 

Does it also happen if you copy the URL, open a new tab, paste it in and press enter? What entity did you use as example?

Hm, I just picked one at random, but now I'm seeing that I think it might be because the scrollbar position is retained between clicks. So, if I try with aas100_flood, it starts at the top of the list. If I try with adtm:absence_marker, it starts somewhere down the list. If I start with atdm:ammo_base, it goes all the way to the bottom of the list. So I guess it's remembering the scroll position.

 

If I copy/paste to another tab, it starts the lists at the top properly.

Link to post
Share on other sites
Hm, I just picked one at random, but now I'm seeing that I think it might be because the scrollbar position is retained between clicks. So, if I try with aas100_flood, it starts at the top of the list. If I try with adtm:absence_marker, it starts somewhere down the list. If I start with atdm:ammo_base, it goes all the way to the bottom of the list. So I guess it's remembering the scroll position.

 

If I copy/paste to another tab, it starts the lists at the top properly.

 

Hm, yes, since the "virtual tab" is just filled with new content, FF seems to do this. I am not sure if I can issue a "scroll to top" event with JS. let me ask google :)

 

Edit:

 

Done now, the view scrolls back to the top when you view a different entity, and remembers the scroll position when you click back to the same entity. Actually, the latter didn't work, either, it also scrolled to the top, because the main table wis called "entity", causing firefox to go to the anchor's top. Now renamed it, which has the effect that firefox also scrolls to the top (because the anchor is no longer found). Oh well.

 

Edit #2: That means my script needs to remember the scroll position, and restore it when the user changes views, but the view's content didn't change. So clicking on an entity, then clicking back to the entity list would restore the scroll pos in the entity list - right now it always scrolls back to the top which is annoying.

 

End of edits.

 

Btw, what do you think of the latest changes to GUI and our doc, does it now finally start coming together for you?

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites
Actually, the latter didn't work, either, it also scrolled to the top, because the main table wis called "entity", causing firefox to go to the anchor's top.

Ah, yeah I remember that happening as well; each time I'd hit back (to entities), rather than remembering where I was, it would jump (semi-annoyingly) all the way to the top again.

 

Yes, I definitely think with recent changes, added docs, and even some self-confirmation of it all by myself, I'm beginning to un-clench a bit.

Link to post
Share on other sites
Edit: Putting descriptions for spawnargs into entity_base should only be done for spawnargs that are REALLY working of every entity. If it f.i. only works for moveables, the description needs to go into atdm:moveable_base. End of Edit.

So far I did that, trying to put the descriptions in the right place. But I can check again just to be sure :) .

Link to post
Share on other sites
So far I did that, trying to put the descriptions in the right place. But I can check again just to be sure :) .

 

Yeah, we probably put some of them wrong, also a lot of the existing ones are in the wrong places. It's a big mess - but we are getting slowly there :)

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites

Have spent the better part of the day to improve the doc and the GUI:

 

* documented quite a few spawnargs, and cleaned up a few def files

* prompted by Flanders documentation effort (seeing articulatedfiure), inserted an atdm:af_entity_base entity definition and also cleaned up all our ragdoll definitions. (Currently unsure if they are used at all, see here http://forums.thedarkmod.com/index.php?showtopic=8907&hl= but figured cleaning them up is a start anyway)

 

Also fixed two important bugs in the GUI code:

 

* searching for certain spawnarg parts (like "mass" and also "ass" etc.) did lead to corrupt search results because the code coloring the results interfered with the code linking to other spawnarg definitions

* deprecated entities are now marked in red and link to their replacement entity.

* when viewing a single spawnarg page, the location where that spawnarg doc is defined is now also shown.

* on the same page, it shows you the actual names of the spawnargs, because these can be different for what you actually look at. Like when you look at "foo", it also shows values for "foo3", "foo_1" etc.

* on the same page, viewing a spawnarg without any suffix did not show spawnargs with suffices (the otherway round it worked, viewing "used_by_3" showed all "used_by", "used_by1" etc.).

 

Here is an example that did not show any spawnargs before:

 

http://bloodgate.com/mirrors/tdm/pub/doc/#...rg-replace_anim

 

and now shows a nice list, the location of the definition as well as the spawnarg names.

 

Enjoy :)

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites

After another round or two of documenting stuff, we now have reached an important milestone:

 

post-144-1233827861_thumb.png

 

E.g.we have more documented spawnargs than undocumented :)

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites

How do I get Bloodstone to show a list of all defs in which a spawnarg occurs? I think I've seen that before but just entered "team" and it gives a definition but not where it occurs. The documentation needs documenting! :)

 

Please give this website a distinctive name. Can't keep calling it Bloodstone nor Dark Mod Documentation. To me, the wiki is the Dark Mod documentation so its confusing. Why not call it The Dark Reference or somesuch?

Link to post
Share on other sites
How do I get Bloodstone

 

bloodgate :)

 

to show a list of all defs in which a spawnarg occurs? I think I've seen that before but just entered "team" and it gives a definition but not where it occurs. The documentation needs documenting! :)

 

You mean this list?

 

http://bloodgate.com/mirrors/tdm/pub/doc/#spawnarg-_color

 

Just search for a spawnarg:

 

http://bloodgate.com/mirrors/tdm/pub/doc/#search

 

or select it from the list:

 

http://bloodgate.com/mirrors/tdm/pub/doc/#spawnargs

 

or append it to the URL

http://bloodgate.com/mirrors/tdm/pub/doc/#spawnarg-

 

and it should show you where it is used.

 

I always meant to come up with some help for the GUI, but then I figured with only half a dozend views it would be pretty obvious what everything does ;)

 

Please give this website a distinctive name. Can't keep calling it Bloodstone nor Dark Mod Documentation.

 

Why not? Namen sind Schall und Rauch :P

 

To me, the wiki is the Dark Mod documentation so its confusing. Why not call it The Dark Reference or somesuch?

 

If someone comes up with a good name, I can easily change it. But "The Dark Reference" is not more distinctive like "The Dark Mod Documentation" ;)

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites

I must be doing it wrong somehow. If I do an internal file search it gives 32 occurrences of the "team" but at bloodgate it gives 2 I think. I just clicked search. Maybe there is another route to another type of search?

Link to post
Share on other sites
I must be doing it wrong somehow. If I do an internal file search it gives 32 occurrences of the "team" but at bloodgate it gives 2 I think. I just clicked search. Maybe there is another route to another type of search?

 

http://bloodgate.com/mirrors/tdm/pub/doc/#spawnarg-team

 

That shows me some 20-odd entries. Doesn't it for you? *confused*

 

(Ah I think I get it. You need to actually read what the sarch returns, it only returns hits to SPAWNARGS or ENTITIES, and you need to click the one you want to see details for. :)

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites

Before or after? Well, I've tried both and still do not see the full list for "team".

 

This is what I've tried:

 

From Overview page I click search and enter team

From the result page I then click spawnarg

From the Overview page I click spawnarg first to get the full list and then click search

 

None of the above give me what I want.

 

This must tell you something. :)

Link to post
Share on other sites

if you search for team this shows up

http://bloodgate.com/mirrors/tdm/pub/doc/#search-team

notice that the spawnargs in the spawnargs column are printed bold, you can click them and that should give you

http://bloodgate.com/mirrors/tdm/pub/doc/#spawnarg-team

in the first column there are all the entities with the spawnarg and in the second column the def files they are in.

Link to post
Share on other sites

OK, thanks. I think it needs more text, more info how to use it. This is what I see (below) and not obvious that there is any more info.

post-400-1233844515_thumb.jpg

The description is also puzzling and I suspect it is only when used on a particular entity. Which raises some questions: is there another definition for when it is used on an AI? If so, should it not show in that list? If so, does this mean we can legitimately vary the definition depending on the entity? If so, maybe I can use this for the custom object entity where, for example, the spawnarg 'target' will need more info than normal because it may be an inventory trigger. With normal entities they already have spawnargs which the mapper may or may not change. The custom entity is a one-off where it is mostly undefined and the mapper must define it himself. I would like to make that process easier for the mapper. Defining the material impact sound is easier to cross out what is unwanted than to search for a list somewhere. That is not possible on normal entities because, of course, they have a defined impact sound.

Link to post
Share on other sites
OK, thanks. I think it needs more text, more info how to use it. This is what I see (below) and not obvious that there is any more info.

 

Uhm, there are links, and if you hover your mouse over them, it says something like "show team". I now modified that to read "Show more info about the spawnarg team" to make it more clear.

 

As for "team", oh you are right, the documentation seems off. I think it is because there are effectively two spawnargs named "team" one for setting the team for fleepoints and one for AI. I will update it's documentation to say so.

 

As for varying what a spawnag does, well, yeah, it is technically possible. Either the C++ code or the script object associated with the entity can do whatever it wants. However, I would strongly advise against such dual-use as it makes documentation very complicated, and surprises people and will only cause confusion.

 

As for your special object, I understand your intention. You want the mapper be very very easily modify a few key spawnarg. However, the point is, there are thousands of them, and potentially 100 that are relevant for a moveable item. I don't think it is wise to include them all and then have some descriptive values set.

 

Instead, we should set a few common default values and give a small list in the description what a mapper might want to change. Sooner or later mappers need to learn the spawnargs anyway, they will encounter them again and again, so I think too much handholding isn't called for :)

 

Instead I think it would (if that doesn't already work) a very good idea if DR just displayed the description for each spawnarg. So you set a set of default values, the mapper sees them and hovers the mouse over one and sees "aaaah snd_bounce is for blah blah" then modifies it.

 

Then we don't need to do anything special for the special object, just add a "editor_setkeyvalue snd_bounce" "blah blah" and be done :)

 

If the original descriptions of the spawnargs are not enough, we can do two things:

 

* improve them, improve them, improve them! :D

* add "comment_snd_bounce" "blah" spawnargs. These would be ignored by anything, but hopefully be read by the mapper after adding the object.

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites

Oh well, guess you have a higher expectation of website users and mappers than I have. If not for this private forum I would not hover my mouse over different words on a web page to see if anything happened but give up after half a minute and never return.

Link to post
Share on other sites
Oh well, guess you have a higher expectation of website users and mappers than I have. If not for this private forum I would not hover my mouse over different words on a web page to see if anything happened but give up after half a minute and never return.

 

I admit that removing the underscore from links is "bad", it breaks the old "links are blue and underline" web paradigm. On the other hand, the links are blue and the are bold and the hightlight quite visually distinct and they are the same all over the page. If you haven't seen that certain parts of the page are links, oh well.... back to the drawing board I guess...

 

Mouse-over titles over links are a very common way to denote more info and show "what happens when you click that link".

 

I am not sure what else I could do except adding all these help text inline, but that would clutter the tables and make everything much harder to read.

 

What could be done is a wiki page describing the pages with images and showing what each parts means. Apart from not having time for this, I also wanted to not do his until the GUI is finalized - not much fun making screenshots and annotating them when a day later the GUI looks different :)

"The reasonable man adapts himself to the world; the unreasonable one persists in trying to adapt the world to himself. Therefore, all progress depends on the unreasonable man." -- George Bernard Shaw (1856 - 1950)

 

"Remember: If the game lets you do it, it's not cheating." -- Xarax

Link to post
Share on other sites

A hopefully quick question:

 

Note text by greebo here: http://forums.thedarkmod.com/index.php?s=&am...st&p=176706

 

To define starting ammonition, the mapper just places these in the worldspawn:

"startingItem_3_item" "weapon_broadhead"

"startingItem_3_qty" "5"

There are also spawnargs for difficulty-dependend starting equipment, if I recall correctly.

 

Wanting to put our new docs to the test, I chased this down. I looked at the worldspawn entity, but such a key doesn't exist on it. I figured it must be undocumented. So I looked at the spawnarg list instead, but it doesn't exist there either. Is this something completely different in terms of docs, or just missing (for some scary other reason we haven't yet covered (which leads to the inevitable question: what else?))?

Link to post
Share on other sites
Wanting to put our new docs to the test, I chased this down. I looked at the worldspawn entity, but such a key doesn't exist on it. I figured it must be undocumented. So I looked at the spawnarg list instead, but it doesn't exist there either. Is this something completely different in terms of docs, or just missing (for some scary other reason we haven't yet covered (which leads to the inevitable question: what else?))?

I don't exactly know how Tels script work but this is what I think. If the spawnarg doesn't show up anywhere in the def files, this seems to be the case, it can't be included in the documentation. How should the script know it exists? So these spawnargs only exist in the code. To make them show up you can add a editor description in the worldspawn entity.

Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


×
×
  • Create New...