News:

SMFNew Installed

+-+-

User+-

Welcome, Guest.
Please login or register.
 
 
 

Login with your social network

Forgot your password?

Site Stats+-

Members
Total Members: 728
Latest: Cho
New This Month: 0
New This Week: 0
New Today: 0
Stats
Total Posts: 10932
Total Topics: 795
Most Online Today: 234
Most Online Ever: 854
(September 18, 2024, 07:49:37 am)
Users Online
Members: 0
Guests: 265
Total: 265

Author Topic: Feature Tags  (Read 6975 times)

0 Members and 76 Guests are viewing this topic.

Re: Feature Tags
« Reply #15 on: »
Bravo!  Bravo!

Re: Feature Tags
« Reply #16 on: »
I found a nasty bug.

If you remove all binary layout files(*.LAYOUT.BINLAYOUT) and run GUTS. Then, the editor create binary files automatically, but these files lose all new tags (I'm not sure, but it looks like this). This means that you need to open all layouts with tags in GUTS and save it again, the editor will create the correct binary.
Never remove these binary files!
« Last Edit: September 06, 2015, 11:48:55 pm by Kva3imoda »

Re: Feature Tags
« Reply #17 on: »
Chthon, can you compare these binary files?

Binary.rar

0 - creation at saving in GUTS
1- automatic creation at the start

Re: Feature Tags
« Reply #18 on: »
Chthon, can you compare these binary files?

Binary.rar

0 - creation at saving in GUTS
1- automatic creation at the start

OY! So it turns out that the wonderful file specification I found the other day is either wrong or outdated when it comes to .binlayout files. After some fiddling, I've been able to work out a general idea of how the files work.

Rough spec of .binlayout
Spoiler (hover to show)

Unfortunately, it's not a ton of help. The two files you gave me differ in a handful of places that I understand and know aren't important (tiny rounding errors in the 3D orientation of Hidden_Treasure_Standart) plus two places that I don't understand. One of these places is the second byte of the file. This was 0x36 in file 0 and 0x04 in file 1. The file spec says that this byte is the version number. Obviously, it isn't. But I don't have a clue what it really is, or if it matters. The other place is in a section at the end of the file beyond the end of the last object. One value changes from 184 in file 0 to -1 in file 1. This section does not exist in the file spec, and I have no clue what any part of it does.

Since I've got no clue if either of these differences is to blame, the best I can do is propose an experiment:
I've attached files 2, 3, and 4.
file 2: changed just the second byte
file 3: changed just the value near the end
file 4: changed both
Try substituting these for the binary to see which, if any of them, result in a working layout in-game.

(Btw: Does 184 mean anything to you? An ID number for one of your custom tags? A number near but not exceeding the total number of files in your mod?)

Re: Feature Tags
« Reply #19 on: »
(Btw: Does 184 mean anything to you? An ID number for one of your custom tags? A number near but not exceeding the total number of files in your mod?)
Hmm, you know, now I have 32 new tags. As I remember the game has 152 static tags. 152+32=184!
And my tag "Hidden Treasure" is now last in alphabetical order.
« Last Edit: September 07, 2015, 09:01:02 am by Kva3imoda »

Re: Feature Tags
« Reply #20 on: »
(Btw: Does 184 mean anything to you? An ID number for one of your custom tags? A number near but not exceeding the total number of files in your mod?)
Hmm, you know, now I have 32 new tags. As I remember the game has 152 static tags. 152+32=184!

Hypothesis: If file 3 and/or file 4 works, and file 2 does not work, then maybe this value near the end is "how many feature tags must be loaded before this layout can be loaded."
[Edit: You ninja'd me. If that particular tag is number 184, then it might also be the sole item in a list of tags to load first. (Or it could be unrelated. We'll (maybe) know after you try the experiment.)]
« Last Edit: September 07, 2015, 09:04:34 am by Chthon »

Re: Feature Tags
« Reply #21 on: »
Hypothesis: If file 3 and/or file 4 works, and file 2 does not work, then maybe this value near the end is "how many feature tags must be loaded before this layout can be loaded."
I have another hypothesis:
When you start the editor all dynamic tags get "extension static" ID in alphabetical order.
(I had a suspicion that something was wrong when I added more new tags - the previous broken. Now I understand that the problem can be in this.)

As we know, all static tags have ID

Code: [Select]
[EC_DEADS]
<INTEGER>ID:155
<STRING>NAME:EC_DEADS
[/EC_DEADS]
[EC_DEAD_P01]
<INTEGER>ID:153
<STRING>NAME:EC_DEAD_P01
[/EC_DEAD_P01]
[EC_DEAD_P02]
<INTEGER>ID:156
<STRING>NAME:EC_DEAD_P02
[/EC_DEAD_P02]
[EC_DEAD_P03]
<INTEGER>ID:157
<STRING>NAME:EC_DEAD_P03
[/EC_DEAD_P03]

I suppose I should add ID manually into all of my new tags, otherwise I will have big problems in the future when I add new tags.  :) But while I'm not sure that this will help. I'll try it tomorrow.
« Last Edit: September 07, 2015, 09:26:37 am by Kva3imoda »

Re: Feature Tags
« Reply #22 on: »
The other place is in a section at the end of the file beyond the end of the last object. One value changes from 184 in file 0 to -1 in file 1. This section does not exist in the file spec, and I have no clue what any part of it does.
Yes, I found this place. It's definitely Tag ID.



Well, I have two news - good and bad.  :)

Bad:
It seems that it is impossible to add IDs for these tags. I tried several variants, none of them works.
My experiments have discovered that ID really depend on the name and assigned in alphabetical order.
All this means - if you add a new tag that violate alphabetical order, you will get a lot of trouble with your old tags.

Good:
It looks like I've found a way to control new tags.
No matter how your tags are called "in reality", it is important how your files are called. Because the alphabetical order applied to this files.
For example:
I have a tag - "EC_DEADS"
Code: [Select]
[EC_DEADS]
<STRING>NAME:EC_DEADS
[/EC_DEADS]
You can name your file completely different, say ID176 or Teg176 or "MyFirstNewTag" - this does not affect on your tag. But for control your tags, you must use a clear and simple name system.
I think you should call your files as follows:
1.dat
2.dat
3.dat
...
999.dat

or

TAG001_MYFIRSTTAG.dat
TAG002_MYFIRSTTAG2.dat
TAG003_MYSECONDTAG48.dat
...
TAG999_INEVERGIVEUPTAG.dat

But I think it would be more convenient to use IDs in the file names. We now know that the game has 152 static tags and all dynamic tags begin at 153. Just use the ID in the name and you will always know your tag ID.
Say:
ID153_EC_DEADS.DAT
ID154_EC_DEAD_P01.DAT
ID155_EC_DEAD_P02.DAT
...
ID184_MY_LAST_TAG.DAT

Spoiler (hover to show)

I believe that in this way you will never break the alphabetical order and your tags will work fine at any stage of development.
« Last Edit: September 09, 2015, 07:15:04 am by Kva3imoda »

Re: Feature Tags
« Reply #23 on: »
I love watching you guys discover stuff.

Re: Feature Tags
« Reply #24 on: »
I love watching you guys discover stuff.
He-he.  :) I hate these tags because they are a bunch of problems, and I love them, because it is an incredible feature!

 

Recent Topics+-