the old information on - How to make Editworld use your custom tiles in a map:

Warzone 2.3.x series. (Unsupported!)
If you issue is with 3.1.x, then DON'T post here, instead use technical support

the old information on - How to make Editworld use your custom tiles in a map:

Postby lav_coyote25 » 09 Apr 2007, 19:47

How to make Editworld use your custom tiles in a map: Author was RBL-4NiK8r.

-Create a new map with Editworld or use an existing map.
Assume the map is named 'MyMap.lnd' in directory '\Warzone2100\mapSaves'
-Go to directory '\Warzone2100\mapDataSets'
-If you intend to make a map that is mainly based on tiles of the Arizona scene you should copy 'WarzoneDataC1.eds' to 'MyMap.eds'
For a mainly urban map you should copy 'WarzoneDataC2.eds' to 'MyMap.eds'
For a mainly rocky mountains map you should copy 'WarzoneDataC3.eds' to 'MyMap.eds'
For a map that uses no tiles or a mix of tiles from the scenes, you can pick one at random.
Note: The information in these .eds-files is not critical. They contain only edge brush definitions and tile types.
The worst that can happen is that EditWorld s options 'paint with edges' and 'fill using edge brush' will paint the wrong tiles.
As far as tile types are concerned: you will need to change them in Editworld (explained below).
-Load 'MyMap.eds' into a text editor.
-Modify third line:
TILETEXTURES "TexPages\TertilesC1.pcx"
Into:
TILETEXTURES "TexPages\MyTiles.pcx"
In this example the pcx-file with the custom tiles is named 'MyTiles.pcx' in directory '\Warzone2100\TexPages')
You may choose either the software- or the hardware-version: this will have no effect on exported maps.

Note: IF YOU USE YOUR OWN DIRECTORY INSTEAD OF 'TexPages'

YOU MUST SPECIFY YOUR TILESET-DIRECTORY RELATIVE TO THE WARZONE DIRECTORY!



-Go to directory '\Warzone2100\mapSaves'
-Load 'MyMap.lnd' into a text editor.
-Modify first line:
Dataset WarzoneDataC1.eds
Into:
Dataset MyMap.eds
-Start Editworld
-Load 'MyMap.lnd' from directory '\Warzone2100\mapSaves'
Note: Editworld will now always show your custom tiles with map 'MyMap.lnd'.
All unmodified maps loaded in EditWorld will still show the default tiles.
-Select in EditWorld from menu 'Options' item 'Terrain Types'
The terrain type for each of your tiles will be shown in the box on the left screen.
-Modify the terrain types of your custom tiles: select one of the 12 terrain buttons
on the tools bar and then click on the appropriate tiles.
-Save map

Notes: The custom map will behave like a normal standard map in EditWorld with one exception:
EditWorld s options 'paint with edges' and 'fill using edge brush' may paint with unwanted tiles.
You can change this by modifying the BRUSHBEGIN-BRUSHEND block in 'MyMap.eds'.
Format not explored.
‎"to prepare for disaster is to invite it, to not prepare for disaster is a fools choice" -me (kim-lav_coyote25-metcalfe) - it used to be attributed to unknown - but adding the last bit , it now makes sense.
User avatar
lav_coyote25
Professional
Professional
 
Posts: 3434
Joined: 08 Aug 2006, 23:18

Re: the old information on - How to make Editworld use your custom tiles in a ma

Postby lav_coyote25 » 09 Apr 2007, 19:58

WarzoneDataC1.eds = the others c2 and c3  .eds files. 




MISCBEGIN
// Terrain tile texture page.
TILETEXTURES "texpages\tertilesC1.png"

// ObjectNames
OBJECTNAMES "Stats\Names.txt"

// Default edge brush definitions, 512 entries.
BRUSHBEGIN
        0 128 0 -1 0 29 0 29 16 28 16 29 48 28 0 -1 0 30 0 29 32 -1 0 28 32 30 16 28 48 30 48 30 32 54 0
        0 128 0 -1 0 30 32 30 48 28 48 30 16 28 32 -1 0 29 32 30 0 -1 0 28 0 29 48 28 16 29 16 29 0 10 0
        0 128 0 -1 0 42 0 42 16 44 16 42 48 44 0 -1 0 43 0 42 32 -1 0 44 32 43 16 44 48 43 48 43 32 13 128
        0 128 0 -1 0 43 32 43 48 44 48 43 16 44 32 -1 0 42 32 43 0 -1 0 44 0 42 48 44 16 42 16 42 0 77 0
        0 128 0 -1 0 76 32 46 32 72 8 46 0 47 16 -1 0 76 0 76 0 -1 0 47 48 46 0 72 0 46 32 76 32 75 0
        0 128 0 -1 0 5 32 5 48 3 16 5 16 3 0 -1 0 4 32 5 0 -1 0 3 32 4 48 3 48 4 16 4 0 7 0
        0 128 0 -1 0 4 0 4 16 3 48 4 48 3 32 -1 0 5 0 4 32 -1 0 3 0 5 16 3 16 5 48 5 32 13 0
        0 128 0 -1 0 26 0 26 16 25 16 26 48 25 0 -1 0 27 0 26 32 -1 0 25 32 27 16 25 48 27 48 27 32 7 0
        0 128 0 -1 0 27 32 27 48 25 48 27 16 25 32 -1 0 26 32 27 0 -1 0 25 0 26 48 25 16 26 16 26 0 24 0
        0 128 0 -1 0 21 32 21 48 22 48 21 16 22 32 -1 0 20 32 21 0 -1 0 22 0 20 48 22 16 20 16 20 0 23 0
        0 128 0 -1 0 20 0 20 16 22 16 20 48 22 0 -1 0 21 0 20 32 -1 0 22 32 21 16 22 48 21 48 21 32 45 0
        0 128 0 -1 0 16 16 16 32 15 32 16 0 15 16 -1 0 17 16 16 48 -1 0 15 48 17 32 15 0 17 0 17 48 18 0
        0 128 0 -1 0 17 48 17 0 15 0 17 32 15 48 -1 0 16 48 17 16 -1 0 15 16 16 0 15 32 16 32 16 16 13 0
        0 128 0 -1 0 33 0 33 16 32 0 33 48 32 48 -1 0 34 0 33 32 -1 0 32 16 34 16 32 32 34 48 34 32 18 0
        0 128 0 -1 0 34 32 34 48 32 32 34 16 32 16 -1 0 33 32 34 0 -1 0 32 48 33 48 32 0 33 16 33 0 24 0
        0 128 0 -1 0 78 0 78 0 78 0 78 0 78 0 -1 0 78 0 78 0 -1 0 78 0 78 0 78 0 78 0 78 0 78 0
BRUSHEND

// Default tile types, 128 entries.
TYPEBEGIN
        2 1 0 2 2 0 2 2 2 2 1 1 1 0 7 7
        7 7 7 8 6 4 4 6 3 3 3 2 4 1 4 7
        7 7 7 4 4 2 2 2 2 1 4 0 4 4 8 8
        2 4 4 4 4 4 4 4 9 9 6 9 6 4 4 9
        9 9 9 9 9 9 9 9 8 4 4 4 8 5 6 2
        2 2 2 2 2 2 2 2 2 2 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
TYPEEND
MISCEND

// The features section. Used for Warzone scenarios to specify the feature stats file.
//
FEATURESBEGIN
STATSDIR "Stats" // Specifies the directory relative to the current working directory
// where the stats file can be found.
IMDDIR "Features" // Specifies the directory relative to the current working directory.
// where the IMD's can be found.
TEXTDIR "TexPages" // Specifies the directory relative to the current working directory
// where the textures for all IMD's can be found.
features.txt // Specifies the stats file which defines the features, this is the same
// file ( or a copy of it ) that gets loaded into the game.
FEATURESEND


// The structure section. Used for Warzone scenarios to specify the structure stats file.
//
STRUCTURESBEGIN
STATSDIR "Stats" // Specifies the directory relative to the current working directory
// where the stats file can be found.
IMDDIR "Structs" // Specifies the directory relative to the current working directory
// where the IMD's can be found.
TEXTDIR "TexPages" // Specifies the directory relative to the current working directory
// where the textures for all IMD's can be found.
structures.txt // Specifies the stats file which defines the structures, this is the same
// file ( or a copy of it ) that gets loaded into the game.
STRUCTURESEND


// The droid section. Used for Warzone scenarios to specify the droid stats file.
//
DROIDSBEGIN
STATSDIR "Stats" // Specifies the directory relative to the current working directory
// where the stats file can be found.
IMDDIR "Droids" // Specifies the directory relative to the current working directory
// where the IMD's can be found.
TEXTDIR "Texpages" // Specifies the directory relative to the current working directory
// where the textures for all IMD's can be found.
templates.txt // Specifies the stats file which defines droid templates, this is the same
// file ( or a copy of it ) that gets loaded into the game.
DROIDSEND


// The objects section. All the objects for a Necromancy scenario go in here.
//
OBJECTSBEGIN
STATSDIR "" // Specifies the directory relative to the current working directory
// where the stats file can be found ( Currently not used in this section ).
IMDDIR "Objects" // Specifies the directory relative to the current working directory
// where the IMD's and textures for the IMD's can be found.
TEXTDIR "" // Specifies the directory relative to the current working directory
// where the textures for all IMD's can be found.
OBJECTSEND


‎"to prepare for disaster is to invite it, to not prepare for disaster is a fools choice" -me (kim-lav_coyote25-metcalfe) - it used to be attributed to unknown - but adding the last bit , it now makes sense.
User avatar
lav_coyote25
Professional
Professional
 
Posts: 3434
Joined: 08 Aug 2006, 23:18

Re: the old information on - How to make Editworld use your custom tiles in a ma

Postby lav_coyote25 » 09 Apr 2007, 20:03

2fortress.lnd  = [ mapfilename.LND ] 


DataSet WarzoneDataC2.eds
GrdLand {
    Version 4
    3DPosition -9472.000000 1344.000000 -10880.000000
    3DRotation 25.000000 90.000000 0.000000
    2DPosition 289 782
    CustomSnap 16 16
    SnapMode 0
    Gravity 1
    HeightScale 5
    MapWidth 250
    MapHeight 250
    TileWidth 128
    TileHeight 128
    SeaLevel 0
    TextureWidth 128
    TextureHeight 128
    NumTextures 1
    Textures {
        texpages\tertilesc2.png
    }
    NumTiles 62500
    Tiles {
        TID 23 VF 0 TF 0 F 9  ... [ cut off here to make it shorter...]

... [ end of the file to show what all is included... ]


TID 23 VF 0 TF 1 F 924 VH 0 0 0 0
    }
}
ObjectList {
    Version 3
FeatureSet WarzoneDataC2.eds
    NumObjects 54
    Objects {
        1 0 "OilResource" 0 "NONAME" 8896.00 655.00 -1856.00 0.00 0.00 0.00
        2 0 "OilResource" 0 "NONAME" 9024.00 655.00 -1856.00 0.00 0.00 0.00
        3 0 "OilResource" 0 "NONAME" 9152.00 655.00 -1856.00 0.00 0.00 0.00
        4 0 "OilResource" 0 "NONAME" 9280.00 655.00 -1856.00 0.00 0.00 0.00
        5 0 "OilResource" 0 "NONAME" 9408.00 655.00 -1856.00 0.00 0.00 0.00
        6 0 "OilResource" 0 "NONAME" 9536.00 655.00 -1856.00 0.00 0.00 0.00
        7 0 "OilResource" 0 "NONAME" 9664.00 655.00 -1856.00 0.00 0.00 0.00
        8 0 "OilResource" 0 "NONAME" 9664.00 655.00 -1984.00 0.00 0.00 0.00
        9 0 "OilResource" 0 "NONAME" 9664.00 655.00 -2112.00 0.00 0.00 0.00
        10 0 "OilResource" 0 "NONAME" 9664.00 655.00 -2240.00 0.00 0.00 0.00
        11 0 "OilResource" 0 "NONAME" 9664.00 655.00 -2368.00 0.00 0.00 0.00
        12 0 "OilResource" 0 "NONAME" 9536.00 655.00 -2368.00 0.00 0.00 0.00
        13 0 "OilResource" 0 "NONAME" 9408.00 655.00 -2368.00 0.00 0.00 0.00
        14 0 "OilResource" 0 "NONAME" 9280.00 655.00 -2368.00 0.00 0.00 0.00
        15 0 "OilResource" 0 "NONAME" 9152.00 655.00 -2368.00 0.00 0.00 0.00
        16 0 "OilResource" 0 "NONAME" 9024.00 655.00 -2368.00 0.00 0.00 0.00
        17 0 "OilResource" 0 "NONAME" 8896.00 655.00 -2368.00 0.00 0.00 0.00
        18 0 "OilResource" 0 "NONAME" 8768.00 655.00 -2368.00 0.00 0.00 0.00
        19 0 "OilResource" 0 "NONAME" 8768.00 655.00 -1856.00 0.00 0.00 0.00
        20 0 "OilResource" 0 "NONAME" 8640.00 655.00 -2368.00 0.00 0.00 0.00
        21 0 "OilResource" 1 "NONAME" -5824.00 632.50 6208.00 0.00 0.00 0.00
        22 0 "OilResource" 1 "NONAME" -5824.00 637.50 6336.00 0.00 0.00 0.00
        23 0 "OilResource" 1 "NONAME" -5824.00 635.00 6464.00 0.00 0.00 0.00
        24 0 "OilResource" 1 "NONAME" -5824.00 637.50 6592.00 0.00 0.00 0.00
        25 0 "OilResource" 1 "NONAME" -5696.00 655.00 6208.00 0.00 0.00 0.00
        26 0 "OilResource" 1 "NONAME" -5568.00 655.00 6208.00 0.00 0.00 0.00
        27 0 "OilResource" 1 "NONAME" -5440.00 655.00 6208.00 0.00 0.00 0.00
        28 0 "OilResource" 1 "NONAME" -5312.00 655.00 6208.00 0.00 0.00 0.00
        29 0 "OilResource" 1 "NONAME" -5184.00 655.00 6208.00 0.00 0.00 0.00
        30 0 "OilResource" 1 "NONAME" -5056.00 650.00 6208.00 0.00 0.00 0.00
        31 0 "OilResource" 1 "NONAME" -5696.00 652.50 6592.00 0.00 0.00 0.00
        32 0 "OilResource" 1 "NONAME" -5568.00 655.00 6592.00 0.00 0.00 0.00
        33 0 "OilResource" 1 "NONAME" -5440.00 655.00 6592.00 0.00 0.00 0.00
        34 0 "OilResource" 1 "NONAME" -5312.00 655.00 6592.00 0.00 0.00 0.00
        35 0 "OilResource" 1 "NONAME" -5184.00 655.00 6592.00 0.00 0.00 0.00
        36 0 "OilResource" 1 "NONAME" -5056.00 652.50 6592.00 0.00 0.00 0.00
        37 0 "OilResource" 1 "NONAME" -4928.00 655.00 6592.00 0.00 0.00 0.00
        38 0 "OilResource" 1 "NONAME" -4800.00 655.00 6592.00 0.00 0.00 0.00
        39 0 "OilResource" 1 "NONAME" -4672.00 655.00 6592.00 0.00 0.00 0.00
        40 0 "OilResource" 1 "NONAME" -4544.00 652.50 6592.00 0.00 0.00 0.00
        41 1 "A0CommandCentre" 1 "NONAME" -6656.00 515.00 8320.00 0.00 0.00 0.00
        42 2 "ConstructionDroid" 1 "NONAME" -6336.00 515.00 8384.00 0.00 0.00 0.00
        43 2 "ConstructionDroid" 1 "NONAME" -6208.00 515.00 8384.00 0.00 0.00 0.00
        44 2 "ConstructionDroid" 1 "NONAME" -6336.00 515.00 8512.00 0.00 0.00 0.00
        45 2 "ConstructionDroid" 1 "NONAME" -6208.00 515.00 8512.00 0.00 0.00 0.00
        46 2 "ConstructionDroid" 1 "NONAME" -6336.00 515.00 8256.00 0.00 0.00 0.00
        47 2 "ConstructionDroid" 1 "NONAME" -6208.00 515.00 8256.00 0.00 0.00 0.00
        48 1 "A0CommandCentre" 0 "NONAME" 10496.00 605.00 -3968.00 0.00 0.00 0.00
        49 2 "ConstructionDroid" 0 "NONAME" 9664.00 647.50 -4032.00 0.00 0.00 0.00
        50 2 "ConstructionDroid" 0 "NONAME" 9664.00 647.50 -3904.00 0.00 0.00 0.00
        51 2 "ConstructionDroid" 0 "NONAME" 9792.00 640.00 -3904.00 0.00 0.00 0.00
        52 2 "ConstructionDroid" 0 "NONAME" 9792.00 647.50 -4032.00 0.00 0.00 0.00
        53 2 "ConstructionDroid" 0 "NONAME" 9920.00 632.50 -3904.00 0.00 0.00 0.00
        54 2 "ConstructionDroid" 0 "NONAME" 9920.00 647.50 -4032.00 0.00 0.00 0.00
    }
}
ScrollLimits {
    Version 1
    NumLimits 1
    Limits {
        "Entire Map" 0 0 0 250 250
    }
}
Gateways {
    Version 1
    NumGateways 34
    Gates {
        84 84 84 88
        111 69 117 69
        67 11 74 11
        78 29 78 33
        74 43 80 43
        69 45 69 49
        102 58 102 63
        106 57 110 57
        79 53 79 57
        66 66 66 71
        79 67 83 67
        139 190 145 190
        172 185 172 190
        146 193 146 197
        150 209 154 209
        193 242 193 249
        222 177 228 177
        189 192 189 197
        205 201 213 201
        159 156 164 156
        222 146 234 146
        212 165 212 169
        203 179 203 183
        201 172 206 172
        177 152 177 156
        175 162 175 167
        197 155 201 155
        213 156 217 156
        203 137 207 137
        189 139 189 143
        227 201 227 205
        66 0 66 7
        119 70 119 75
        83 89 83 93
    }
}
TileTypes {
    NumTiles 91
    Tiles {
        2 2 2 2 2 1 2 2 1 1 1 1 1 1 7 7
        7 7 7 1 8 4 4 0 7 7 7 7 4 4 2 4
        0 2 0 0 2 4 4 0 4 6 2 6 6 6 6 6
        6 4 6 3 4 4 2 2 9 9 9 2 4 2 4 9
        9 9 9 9 8 8 8 8 4 2 0 4 4 2 2 2
        3 2 2 2 2 2 2 2 2 2 0
    }
}
TileFlags {
    NumTiles 91
    Flags {
        0 0 0 0 0 0 0 0 896 0 0 0 0 32 0 32
        0 0 0 896 0 0 896 0 0 0 0 0 0 0 0 0
        0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
        0 0 0 896 0 0 896 0 0 0 0 0 0 0 0 0
        0 0 0 0 0 0 0 0 0 0 0 0 896 0 0 0
        0 0 0 0 0 0 0 0 0 0 0
    }
}
Brushes {
    Version 2
    NumEdgeBrushes 16
    NumUserBrushes 0
    EdgeBrushes {
        0 128 0 -1 0 73 0 73 16 61 48 73 48 61 32 -1 0 74 0 73 32 -1 0 61 0 74 16 61 16 74 48 74 32 39 128
        0 128 0 -1 0 74 32 74 48 61 16 74 16 61 0 -1 0 73 32 74 0 -1 0 61 32 73 48 61 48 73 16 73 0 79 0
        0 128 0 -1 0 5 0 5 16 7 48 5 48 7 32 -1 0 4 0 5 32 -1 0 7 0 4 16 7 16 4 48 4 32 1 128
        0 128 0 -1 0 4 32 4 48 7 16 4 16 7 0 -1 0 5 32 4 0 -1 0 7 32 5 48 7 48 5 16 5 0 79 0
        0 128 0 -1 0 27 0 27 16 24 16 27 48 24 0 -1 0 26 0 27 32 -1 0 24 32 26 16 24 48 26 48 26 32 18 0
        0 128 0 -1 0 26 32 26 48 24 48 26 16 24 32 -1 0 27 32 26 0 -1 0 24 0 27 48 24 16 27 16 27 0 8 0
        0 128 0 -1 0 16 16 16 32 14 16 16 0 14 0 -1 0 17 16 16 48 -1 0 14 32 17 32 14 48 17 0 17 48 18 0
        0 128 0 -1 0 17 48 17 0 14 48 17 32 14 32 -1 0 16 48 17 16 -1 0 14 0 16 0 14 16 16 32 16 16 52 0
        0 128 0 -1 0 77 0 77 16 72 16 77 48 72 0 -1 0 76 0 77 32 -1 0 72 32 76 16 72 48 76 48 76 32 52 0
        0 128 0 -1 0 76 32 76 48 72 48 76 16 72 32 -1 0 77 32 76 0 -1 0 72 0 77 48 72 16 77 16 77 0 23 0
        0 128 0 -1 0 35 0 35 16 34 16 35 48 34 0 -1 0 36 0 35 32 -1 0 34 32 36 16 34 48 36 48 36 32 1 0
        0 128 0 -1 0 36 32 36 48 34 48 36 16 34 32 -1 0 35 32 36 0 -1 0 34 0 35 48 34 16 35 16 35 0 23 0
        0 128 0 -1 0 38 0 38 16 40 48 38 48 40 32 -1 0 39 0 38 32 -1 0 40 0 39 16 40 16 39 48 39 32 23 0
        0 128 0 -1 0 39 32 39 48 40 16 39 16 40 0 -1 0 38 32 39 0 -1 0 40 32 38 48 40 48 38 16 38 0 51 0
        0 128 0 -1 0 12 48 12 0 13 48 12 32 13 32 -1 0 19 0 12 16 -1 0 13 0 19 0 13 16 19 0 19 0 19 0
        0 128 0 -1 0 19 0 19 0 13 16 19 0 13 0 -1 0 12 16 19 0 -1 0 13 32 12 32 13 48 12 0 12 48 52 0
    }
}
‎"to prepare for disaster is to invite it, to not prepare for disaster is a fools choice" -me (kim-lav_coyote25-metcalfe) - it used to be attributed to unknown - but adding the last bit , it now makes sense.
User avatar
lav_coyote25
Professional
Professional
 
Posts: 3434
Joined: 08 Aug 2006, 23:18

Re: the old information on - How to make Editworld use your cust

Postby Black Sabbath » 28 Jan 2009, 03:26

I'm just going to add that the above information will allow you to use custom tiles within editworld but to get the new tileset to be used in warzone you also need to have a program called tmlink (tile map linker)

You can find out more info about tmlink at the following links

DancingMoogle aka ChainsawMonkey's TmLink info

Warzone Tile-map linker Version 1.1.0 Beta
User avatar
Black Sabbath
Rookie
Rookie
 
Posts: 22
Joined: 03 Jan 2009, 05:14

Re: the old information on - How to make Editworld use your cust

Postby Buginator » 31 Jan 2009, 23:36

Black Sabbath wrote:I'm just going to add that the above information will allow you to use custom tiles within editworld but to get the new tileset to be used in warzone you also need to have a program called tmlink (tile map linker)

You can find out more info about tmlink at the following links

DancingMoogle aka ChainsawMonkey's TmLink info

Warzone Tile-map linker Version 1.1.0 Beta

For this version of warzone, that isn't required.
You can specify which tileset to load, and all the other needed info it wants via text files.
and it ends here.
User avatar
Buginator
Professional
Professional
 
Posts: 3285
Joined: 04 Nov 2007, 02:20

Re: the old information on - How to make Editworld use your cust

Postby REZ » 20 Dec 2009, 13:48

Hello,

I did search for Tile Linker 1.1.0 beta.
I did found 1.1.1.on http://warzone2100.de/fileshinweise.php
Do I have to use V 1.1.0 beta to make it working with WZ 2.2.4 ?
Where do I find V. 1.1.0 beta?

Have a great Day,

C.U. R.E.Z.
REZ
Trained
Trained
 
Posts: 83
Joined: 16 Dec 2009, 11:49
Location: Pattensen, Germany

Re: the old information on - How to make Editworld use your cust

Postby lav_coyote25 » 21 Dec 2009, 00:46

REZ wrote:Hello,

I did search for Tile Linker 1.1.0 beta.
I did found 1.1.1.on http://warzone2100.de/fileshinweise.php
Do I have to use V 1.1.0 beta to make it working with WZ 2.2.4 ?
Where do I find V. 1.1.0 beta?

Have a great Day,

C.U. R.E.Z.


do not use tilelinker nor 1.1.0 . those are both original stuff . :)
User avatar
lav_coyote25
Professional
Professional
 
Posts: 3434
Joined: 08 Aug 2006, 23:18


Return to 2.3.x

cron