MemoryStone

MemoryStone

12.5k Downloads

StructureTypes.yml Readability.

ryantheleach opened this issue ยท 3 comments

commented

Would the program freak out if there was more then 1 structure for each type of memorystone?

If not I was thinking we could add in a free memory stone structure as an example of having multiple configurations.

Also I don't understand the structure files very well,

structuretypes:
-   structure:
    -   z: 1
        material: STONE
        y: 0
        x: 1
**trimmed**
    -   z: 1
        material: OBSIDIAN
        y: 1
        x: 1
    rotator: NONE
    name: Memory Stone
    metadata:
        distanceLimit: '0'
        memorizecost: '200'
        teleportcost: '50'
        global: 'false'
        buildcost: '1000'
        type: MEMORYSTONE
        permissionRequired: memorystone.create.local

Is it possible to reformat them at all to this: it would make it a Lot more readable but probably break compatibility....

structuretypes:
-   structure:
    name: Memory Stone
    rotator: NONE
    metadata:
        distanceLimit: '0'
        memorizecost: '200'
        teleportcost: '50'
        global: 'false'
        buildcost: '1000'
        type: MEMORYSTONE
        permissionRequired: memorystone.create.local
    -   material: STONE
        x: 1
        y: 0
        z: 1

**trimmed**

    -   material: OBSIDIAN
        x: 1
        y: 1
        z: 1
commented

https://github.com/tprk77/HealingTotem/wiki/Write-a-totemtypes.yml

Seems like it should support better readability already, its just a matter of formatting it as such...

commented

when I wrote it, i wrote it with having multiple of any kind of memory stone in mind, so that shouldn't be a problem at all.

You've just got an issue there, the - material: entries need to go against the - structure: , but otherwise, you can arrange them however you want :)

I have been wanting to change the format though, I'm not too fond of the current format, but it was easy to implement (as in, it was already implemented by healingtotem) - We just need to keep backward compatibility, but that should be easy enough since we can just replace the structure: entry with something like newstructure: and handle structure the same way (but optional)

I'm thinking something where you map letters to materials :

materialtypes:
 STONE: X
 OBSIDIAN: Y
 AIR: O

then have a newstructure something like :

structure:
 - z: 0
 map: [
   XXX
   XXX
   XXX
 ]
 - z: 1
   map: [
     OOO
     OYO
     OOO
   ]

bit rough, but you get the idea :P

commented

The problem there is whilst it makes sense graphically, with yml i cant see it making any sense at all...

Also The old format made enough sense to be use-able by anyone that notices how it works(a reworded explanation similar to that of healing totem wouldn't go astray either) it was just really horrid to work out which z belonged to which material etc.

after I visited the healing totem structure he gives a good example on how to format the files so that they are quite readable.

The perfect solution would be to not require it to be readable and have an in-game method of editing the structures...
I wonder how hard it would be to read in a "minecraft schematic file" as used by world edit + others?