Staredit Network > Forums > SC1 Terrain > Topic: ISOM?
ISOM?
Oct 31 2013, 1:41 pm
By: trgk  

Oct 31 2013, 1:41 pm trgk Post #1



This is incomplete work. Will be updated.

There should be something known about ISOM i think...
just that they are not published. So I decided to work on ISOM myself.
( I needed them in my project... )

current status.
Image

I just want to decode the numbers, and hash these isom 'diamond values' to tile.



Found :
1. ISOM length = (w/2+1) * (h+1) * 4 * 2byte
each 2*1 tiles has 4 word(ISOM values)
(see the picture for example. there's each one more tile
at right and the bottom) (known)

2. isom block (associated with each 2*1 dominos) has
4 words. These words are placed at the
Left, Up, Right, and Down
position in the domino. (see pic.)

3. Red text are TILE value. Black & White texts are
ISOM value. I've temporailly painted isom hex>=0x80 as white to indicate
border values, (not exact. some isom values have incorrect textcolor. ex)platform)

4. Horizontal/Vertical lines are normal gridsz (64px * 64px. Entire scene
are magnified by 2.) Diagonal lines are isometric grid.

5. Every isom value in the same isometric grid has same msb 12bit.
6. Every tile in 2*1 domino(seperated by white axis-parallel grids)
are different just by 0010h.
7. Each domino is an intersection of two diamonds. Only two diamond
intersecting with the domino has an effect to its value.
8. I've not yet looked into relationship with ISOM and TILE, but
- LSB 4 bits of ISOM and LSB 5 bits of TILE can be ignored. Think it as of random data.
- Maybe there might be some precedence between different tile types. dirt > water, grass and
asphalt < dirt. dirt = high dirt, and so on?
- I'm thinking that there should be some 'hash' function for ISOM-> TILE conversion, but
there's still a possibility that ISOM and TILE are just mapped with some table...
(Any programmer capable of generating my pic will be able to create their own ISOM-aware tile editor.)
( with some labor for such table... now)

(There should be some 'hash' I think... but I haven't found one.)

Expecting some replies and research of ISOM value.
This (currently) seems too easy for being 'a true unknown section of the .chk format', as mentioned here.

Works left :
1. Relationship between non-border isom values and isom values.
2. Some kind of magic to convert isom to tile.
3. Some kind of black magic to convert tile to isom.


sorry for bad english. It should be readable, however.

And please share any works derived from/ had idea from this post.
ISOM should be considered imperfect. We should designed some kind of ISOx(?) to make
- low and high cliff should merge when I want them to.
- axis-oriented cliffs. They are already available by custom tiles, but it should be better for them to be integrated into map editor.
- infinite cliff / ramp / bridge should be supported.

Post has been edited 2 time(s), last time on Nov 1 2013, 2:32 am by trgk.



EUD

Oct 31 2013, 3:01 pm jjf28 Post #2

Cartography Artisan

Nice to see someone else is interested in this as well :)

SI confirms that the dat files are used in ISOM or ISOM to TILE calculations, so we're prolly going to need this: CV5 documentation.

I've attached a copy of some images SI used during his attempts at understanding ISOM (AFAIK they were unsuccessful in completely capturing the algorithms so feel free to ignore).

There's a lot of discussion here: http://blizzforums.com/showthread.php?583-The-CHK-Editing-and-Reference-Thread -- VanMirken claims to have solved it (in another thread), but I cannot get in contact with him.

Here's how you take an MTXM value ("TileValue") and get its CV5 ref:

Code
cv5Reference = group*52

        where:  group = mtxmValue / 16  = high 12 bits
                tile  = mtxmValue & 0xF = low 4 bits (used to get VF4 and VX4 refs)


I haven't started to work on figuring out ISOM / ISOM to TILE myself yet but i'll probably join you at some point.

Attachments:
SIs Images.zip
Hits: 7 Size: 2930.33kb

Post has been edited 2 time(s), last time on Oct 31 2013, 3:44 pm by jjf28.



Rs_yes-im4real - Clan Aura - jjf28.net84.net

Reached the top of StarCraft theory crafting 2:12 AM CST, August 2nd, 2014.

Jan 2 2014, 2:28 pm trgk Post #3



Thanks to SPA (Not member of SEN I think) for 'finding' this prj.
+ Thanks to the author, whom I don't know much about yet.

Isom code section analysis, maybe.
It's comment are written in chinese.
http://code.google.com/p/lawine/source/browse/trunk/lawine/misc/isomap.c

Post has been edited 1 time(s), last time on Jan 2 2014, 2:31 pm by trgk. Reason: Slight grammer fix



EUD

Oct 15 2014, 12:56 am trgk Post #4



Google translated version of isomap.c
Link

Attachments:
isomap_translated.c
Hits: 3 Size: 80.32kb

Post has been edited 1 time(s), last time on Oct 15 2014, 1:03 am by trgk.



EUD

Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[02:58 pm]
Pr0nogo -- Suicidal Insanity
Suicidal Insanity shouted: Moose Naw - if that is an option, it should be a global option
agreed
[02:58 pm]
Pr0nogo -- no problem
[11:47 am]
rnDPrc -- Pr0nogo
Pr0nogo shouted: though idk if you can extract them from scr anymore since casc took effect, so you can download them here
Thank you :)
[11:28 am]
Suicidal Insanity -- Pr0nogo
Pr0nogo shouted: though idk if you can extract them from scr anymore since casc took effect, so you can download them here
SC:R still ships with all the old MPQs
[11:26 am]
Suicidal Insanity -- Otherwise it clutters up the UI and you have inconsistent names from location to location
[11:26 am]
Suicidal Insanity -- Moose
Moose shouted: Basically, anywhere that supports custom unit names should have an option to use the originals imo
Naw - if that is an option, it should be a global option
[11:10 am]
Pr0nogo -- though idk if you can extract them from scr anymore since casc took effect, so you can download them here
[11:08 am]
Pr0nogo -- rnDPrc
rnDPrc shouted: Where can I learn more about the default AI Scripts behavior? I'm having some problems here
extract the scripts using pympq and open them in pyai (using the python modding suite) and use nekron's guide as a reference
[10:57 am]
NudeRaider -- http://www.staredit.net/372001/ thou shalt not judge
[10:18 am]
rnDPrc -- I mean the Run AI Script trigger choices
Please log in to shout.


Members Online: Roy