Jump to content

[Superseded by version 2.0] Map and mission Editor v1.4: Full of improvements and new features!


Klofkac

Recommended Posts

On 6/14/2020 at 11:28 PM, Klofkac said:

Thank you very much for these words. Seeing a new and active member in our small community is actually a motivation for me, who knows whether anyone else like you will yet appear. I hope you still get a new breath and continue making good quality missions, like the one you started up with. Having better tools and work getting done easier can be a good motivation for you, too.

I've hit a very rough patch recently IRL so I'm a bit absent and had to pause my learning and mapping, but I have not forgotten about it and will continue to build upon that once my situation gets a bit better. So far I've made 3 missions as a small campaign, and I will definitely continue my work with that. :)

Oh and I'll be making some videos featuring what I've learned and built so far. Hoping that will contribute a bit to spreading D2k singleplayer mission design a bit into the world. A bunch of you here have made a lot of videos already, and that's very inspiring.

I'm making a couple for Tiberian Sun, but will switch over to Dune 2000 as well for some things:

https://youtu.be/LbVnWkmO6O8

Edited by AZ-Stalker
Link to comment
Share on other sites

Todays updates:

j88ex76.png

- Added new fields related to @Feda's new mission launcher (Campaign folder, Mods folder, Colours.bin file, Intel ID)
- Added player color marker next to Allocation Index field (player colors are loaded directly from COLOURS.BIN file, same colors are drawn on minimap)
- Added logic to automatically load COLOURS.BIN file directly from respective campaign data folder and according to "Colours.bin" file field

Next plans: load editor configuration (structures.ini, players.ini, ...) and graphics files (structures.bmp) for individual mission from custom campaign data folder, making editing with modded files much easier

  • Upvote 1
Link to comment
Share on other sites

Wait, the alloc. index will show the color of that such index now? Like, index 0 will be blue, index 1 will be red and so on, and if you set a different color.bin can even loads those, wow.

What happens with higher index? not saying that it must show them because half the time not even the game now which colors will show up, but which kind of color it will picked? I guess probably black, since 90% of them are black.

I already have been testing Feda's launcher playing his missions, but also I have been preparing some of my own missions too; so far I keep two versions of the ini "just in case", but I already tried the Dune 2 Retro campaign adding the custom color and the tileset (and deleting the tileset itself from my folder) and it works as intended (even I copy and paste one of the original BLOXBASE and rename it as "BLOXRETR" and the launcher seems to not care, he will continue to use my own BLOXRETR, as it should be.

I can imagen that if I pick any campaign or mods folder, pressing "sup" I can delete the entrance, as you can do right now with the "music" tab.

So... I've doing adding the things on the .ini manually, but having that quick (and easy) access to the campaign and mod folders withouth needing to check how those folders are called it's going to help everybody, both newcomers, by being more user-friendly, and even for veteran.

Good job. Feda and you are killing it.
When I saw how overcomplicated shai-hulud was and didn't bother to ever try, and then doing maps much more easily with the old MVI editor... then you arrive and expanded this game lenth in ways I couldn't ever imagine. 

So, thank you both: @Klofkac and @Feda

Link to comment
Share on other sites

Another update: Apart from loading custom COLOURS.BIN file per each mission, editor can also load customized list of player names per mission! @Feda you would be interested (hope I used correct names, this is just for demonstration):

Sg3Pcls.png

Rather a cosmetic thing in the editor, but I believe it can help a lot when designing events for the mission:

XLwMvON.png

Much better, isn't it?

All you need to do, is to place .ini file into Colours folder. The file name is same but extension is .ini instead of .bin (for example colours_O9.ini). And the file structure should be same as config/players.ini in the editor folder.

[Player1]
name=Tleilaxu Right
short=TlxR

[Player2]
name=Tleilaxu Left
short=TlxL

[Player3]
name=Ordos
short=Ord

[Player4]
name=Tleilaxu Mid
short=TlxM

[Player5]
name=Capital Power
short=CapP

[Player6]
name=Capital Small
short=CapS

[Player7]
name=Capital Main
short=CapM

[Player8]
name=None
short=None

 

On 6/21/2020 at 1:09 AM, Cm_blast said:

Wait, the alloc. index will show the color of that such index now? Like, index 0 will be blue, index 1 will be red and so on, and if you set a different color.bin can even loads those, wow.

What happens with higher index? not saying that it must show them because half the time not even the game now which colors will show up, but which kind of color it will picked? I guess probably black, since 90% of them are black.

You are right. For higher indexes, editor will display black color.

Edited by Klofkac
  • Upvote 1
Link to comment
Share on other sites

31 minutes ago, Klofkac said:

Another update: Apart from loading custom COLOURS.BIN file per each mission, editor can also load customized list of player names per mission! @Feda you would be interested (hope I used correct names, this is just for demonstration):

Sg3Pcls.png

Rather a cosmetic thing in the editor, but I believe it can help a lot when designing events for the mission:

XLwMvON.png

Much better, isn't it?

All you need to do, is to place .ini file into Colours folder. The file name is same but extension is .ini instead of .bin (for example colours_O9.ini). And the file structure should be same as config/players.ini in the editor folder.


[Player1]
name=Tleilaxu Right
short=TlxR

[Player2]
name=Tleilaxu Left
short=TlxL

[Player3]
name=Ordos
short=Ord

[Player4]
name=Tleilaxu Mid
short=TlxM

[Player5]
name=Capital Power
short=CapP

[Player6]
name=Capital Small
short=CapS

[Player7]
name=Capital Main
short=CapM

[Player8]
name=None
short=None

 

You are right. For higher indexes, editor will display black color.

This is amazing, and extremely helpful. Thank you for this great update! Keep us posted!

Link to comment
Share on other sites

57 minutes ago, Klofkac said:

Much better, isn't it?

All you need to do, is to place .ini file into Colours folder. The file name is same but extension is .ini instead of .bin (for example colours_O9.ini). And the file structure should be same as config/players.ini in the editor folder.

I guess this is just for auto-clarification, like the example to understand that X specific trigger it's going to affect the custom house instead the side, which I agree it was the hardest part when I was updating old's people work. They were "harkonnen" on an imperial campaign, change the sides to use the launcher correctly and mistakes will come with the switch because this 1 reinforcement/spawn/trigger are not attached to the correct side/house.

I already have in mind a campaign with lesser factions and their own colors, so I may end using it this myself soon enough.

Honestly, the alliances it's the most hard part to me to do as I keep making weird non-dual alliances all the time, this one it's ally with you, but you are neutral against him, and things like this. Having the actual names on them it's going to help.

57 minutes ago, Klofkac said:

You are right. For higher indexes, editor will display black color

Good choice.
I am curious; exactly which color will show that part? I mean, the color it's a set of 16 tones of that such color, so your editor will show the darkest, one of the middle or...? just curious.

Well; I am going to say, I had in mind a new campaign, already overthinking which index I was going to use, and to add small things as the grenadier or a St.Raider for the lesser factions (to have something extra to use focused on their speciality) I wasn't ever bother to use TibEd at all.
But with all these new features; I have installed again TibEd so... I am on my way to create something.

Edited by Cm_blast
Link to comment
Share on other sites

10 hours ago, Feda said:

This is amazing, and extremely helpful. Thank you for this great update! Keep us posted!

I'm rethinking this a bit. Instead of placing the players.ini file into Colours folder and naming it the same like the Colours.bin file, it will be better to create a new "Players" folder and place those ini files in it and make them separate and independent from Colours.bin files. I will add a new field called "Players.ini file" on Mission settings window. Then you can use custom player names even if you don't use custom colours.bin file.

10 hours ago, Cm_blast said:

I am curious; exactly which color will show that part? I mean, the color it's a set of 16 tones of that such color, so your editor will show the darkest, one of the middle or...? just curious.

It will use the color from middle, it should be exactly the one which game displays on minimap.

Link to comment
Share on other sites

Here's another update in D2kEditor. Here is a screenshot, can you spot all the new things?

KT5JTZf.png

As you might know, I was working on implementing support for per-mission editor graphics and configuration files (I mean those .ini files under config folder). This can be extremely helpful for creating missions using modded game resources, as you can use i.e. the modified graphics, unit and building configuration per individual mission.

Here is example of changes I made:
- Modified graphics/structures.bmp (just swapped colors for a simple demonstration)
- Modified graphics/misc_objects.bmp (changed the background tile for spice bloom)
- Modified config/structures.ini (added Flame Tank on the list of units)
- Modified config/misc_objects.ini (renamed Spice Bloom to Wood Bloom)
- Modified config/players.ini (renamed player names - already showed previously)
- Modified config/mis_units.txt (this is list of units for Events and Conditions, added Flame Tank on the list)
- Modified COLOURS.bin
- Modified TILEDATA.bin

Here is the example folder structure and how editor loads it:

CustomCampaignData
|- WarOfTheLandsraad
   |- Colours
      |- colours_O9.bin
   |- Players
      |- players_O9.ini
   |- WOL
      |- config
         |- structures.ini
         |- misc_objects.ini
         |- mis_units.txt
      |- graphics
         |- structures.bmp
         |- misc_objects.bmp
      |- data
         |- bin
            |- TILEDATA.BIN

So the file loading logic is in line with mission launcher folder structure. The _mask bmp files are created automatically, if missing.

  • Upvote 2
Link to comment
Share on other sites

3 hours ago, Klofkac said:

Here's another update in D2kEditor. Here is a screenshot, can you spot all the new things?

I can't, it looks the same to me xD.

Having the name of the actual faction and new vehicles it's nice when using tibed and switching units. This affect the AI tab too? "unit build priority" line, although this could be tecnically renamed directly if neccesary (if I am not wrong).

- Modified TILEDATA.bin

3 hours ago, Klofkac said:

- Modified TILEDATA.bin

What this mean?
I never worked with the tiledata. so I am not sure exactly. I only know that vanilla dune doesn't have Deviator for Atreides, raider for Harkonnen or Atreides High tech for Ordos and so on, while the current version have it.

Having a vanilla version move it into the editor will have any impact? like if you try to place those units the editor can't or something like that.

 

Link to comment
Share on other sites

2 hours ago, Cm_blast said:

- Modified TILEDATA.bin

What this mean?
I never worked with the tiledata. so I am not sure exactly. I only know that vanilla dune doesn't have Deviator for Atreides, raider for Harkonnen or Atreides High tech for Ordos and so on, while the current version have it.

Each mission map file (.MAP) contains two values for each cell on the map. 

One value is for terrain data. This determines the which terrain cell is loaded on that cell.

The other value is for what I call object data (what the editor calls 'Special Index'). This determines what this cell contains (spice, infantry, building, worm). The game actually refers to Tiledata.bin to translate that value into the actual object to load. 

 

Example:

Map Object Value: 14
Look for the 14th 4-byte value in Tiledata.bin (a.k.a. starting from byte (14 x 4 = 56 (0x38)) 
The values are: 07 00 00 80

80 = This is a building...
00 = ...belonging to House at slot 0 (the first house)...
00 = ...
07 = ...whose building type is Refinery

Game: Ok. I place a Refinery belonging to the first player at this cell.

 

All these are done invisibly by the game, and emulated in the editor. 

Being capable of working on the modified bin would mean that if a mod changes how each special index maps to an object, the editor remains capable of handling this change. If we manage to figure out Templates.bin enough to modify the number of supported units and structures, this would be very useful as Tiledata would have to be modified to support any addition to the unit roster.

 

Edited by lovalmidas
Link to comment
Share on other sites

13 minutes ago, lovalmidas said:

Each mission map file (.MAP) contains two values for each cell on the map. 

One value is for terrain data. This determines the which terrain cell is loaded on that cell.

The other value is for what I call object data (what the editor calls 'Special Index'). This determines what this cell contains (spice, infantry, building, worm). The game actually refers to Tiledata.bin to translate that value into the actual object to load.

Thanks for the explaining; I never went too har on the tiledata.bin or edited it.

Link to comment
Share on other sites

Amazing work as always Klofkac! Updates to the editor and such things that you selflessly keep improving on for all our benefit is one of the main lifelines for this community's continued growth, and we are undoubtedly all very grateful for your efforts!

Edited by AZ-Stalker
Link to comment
Share on other sites

9 hours ago, Cm_blast said:

This affect the AI tab too? "unit build priority" line, although this could be tecnically renamed directly if neccesary (if I am not wrong).

This is actually something I implemented today. The buildings and unit names for AI properties under AI tabs are loaded from building and unit list files. No need to modify the ai properties ini file, which makes things even easier!

7 hours ago, lovalmidas said:

Being capable of working on the modified bin would mean that if a mod changes how each special index maps to an object, the editor remains capable of handling this change. If we manage to figure out Templates.bin enough to modify the number of supported units and structures, this would be very useful as Tiledata would have to be modified to support any addition to the unit roster.

Thanks for explaining the TILEDATA.BIN file meaning. We made TILEDATA.BIN relearch already in past, and as a result, I was able to modify this file in order to enable placing any building and unit type for any player (i.e. Harkonnen palace for Ordos etc). I made a TILEDATA.BIN editor, and distribute TILEDATA.BIN with the map and mission editor, so when this file is replaced in game's data\bin folder, this feature can be used in game.

The editor loads TILEDATA.BIN, so if this file is modified further to add even some extra building or unit types, editor will be able to place those buildings and units (if they are added into config\structures.ini file as well).

3 hours ago, AZ-Stalker said:

Amazing work as always Klofkac! Updates to the editor and such things that you selflessly keep improving on for all our benefit is one of the main lifelines for this community's continued growth, and we are undoubtedly all very grateful for your efforts!

Thanks! I really hope you and others will find those features useful

Link to comment
Share on other sites

1 hour ago, Klofkac said:

This is actually something I implemented today. The buildings and unit names for AI properties under AI tabs are loaded from building and unit list files. No need to modify the ai properties ini file, which makes things even easier!

That's really good; having access to "this modified outpost now it is suppose to be a heavy fact" will help in the creation of maps.

1 hour ago, Klofkac said:

Thanks for explaining the TILEDATA.BIN file meaning. We made TILEDATA.BIN relearch already in past, and as a result, I was able to modify this file in order to enable placing any building and unit type for any player (i.e. Harkonnen palace for Ordos etc). I made a TILEDATA.BIN editor, and distribute TILEDATA.BIN with the map and mission editor, so when this file is replaced in game's data\bin folder, this feature can be used in game.

I knew that this was related with the "unit/building" for everybody; but I didn't know if it has any other use. Never researched on it.

1 hour ago, Klofkac said:

Thanks! I really hope you and others will find those features useful

The renaming of the sides that's something I am going to use, for sure; I am already making a campaign that have the player a different color from the Ordos, a darker version of red/wine. But also 3 more Ais will have different colors as well, while keeping Atreides, Harkonnen and Ordos intact to fight them.
So right now, I have 4 slots reserved from these houses, but from now I need to remember that "player = index 2" and "Ordos = index 5".

So yeah, at the very least being able to rename the factions and showing the actual colors that's something I will totally will make use of.

Edited by Cm_blast
Link to comment
Share on other sites

Oh, something that I found happening, it is not a big deal, but we currently have some people working on tilesets and I found something on the current version of the editor.

This is version 1.3
I open this preset, I click on this specific tile

image.png.23899ca32c53d322ef23a07da1791a77.png

I can use it to paint or whatever I need.
If I press space bar and deploy the whole tileset, the editor will have it marked as well.

image.png.1d1c90419791e050ae20fb787301509a.png

However, in the 1.4 version (candidate 3) this no longer happen.

Doing the same steps, but the program keep the default 0,0 position marked instead.

image.png.61f8b7a7d32513b194732300ad5de9ad.png

I don't know how much trouble can be to be changed back or if you were aware, or maybe some kind of line I am missing on the .ini?

Edited by Cm_blast
Link to comment
Share on other sites

2 hours ago, Cm_blast said:

I don't know how much trouble can be to be changed back or if you were aware, or maybe some kind of line I am missing on the .ini?

I know about this, and this is due to change in programming of the editor. You know, in .ini file, you have three ways how to specify a block preset:
1) width.height.Xposition.Yposition
2) width.height.tile
3) -width.-height.tile.tile.tile.tile...

The first two are for tiles stored continuously within tileset image, the third way is to specify a "custom" block, composed of tiles placed randomly in tileset image.

In v1.3, the editor stored continuous and custom blocks in memory separately, and I need ho have a code for handling continuous presets and separate code for handling custom presets. In v1.4, I made lot of new features, and to make things simpler for me, I unified this and made it that also continous presets are stored in memory as "custom" blocks composed of individual tiles. So editor always stores all individual tiles instead of just X and Y position of the top-left tile. That's why the behavior you described stopped working. It's just a trade-off for the new features. I hoped nobody would notice this behavior change.

Link to comment
Share on other sites

On 6/22/2020 at 11:16 PM, Klofkac said:

All you need to do, is to place .ini file into Colours folder. The file name is same but extension is .ini instead of .bin (for example colours_O9.ini). And the file structure should be same as config/players.ini in the editor folder.

I am confused on this part.

You start with player1

[Player1]
name=Tleilaxu Right
short=TlxR

But when I tried, the first player it's "player0"; here I have the .ini and the editor opened.

image.png.e838b6f00405d94f90878160a3ee38ef.png

and ends with player7; while in your notes ends as player8; copy-paste from your post gives me "unnamed" instead Tleilaxu Right

 

Link to comment
Share on other sites

17 minutes ago, Cm_blast said:

I am confused on this part.

Well, I changed that after I posted my example. First I made the numbers Player1 - Player8, but because there has been always numbering like 0 - 7 in player combo boxes (and allocation indexes use numbers 0 - 7 as well), I changed my mind and changed it to Player0 - Player7 so that the numbering is unified. So my example is obsolete, just use Player0 - Player7.

Link to comment
Share on other sites

1 hour ago, Klofkac said:

Well, I changed that after I posted my example. First I made the numbers Player1 - Player8, but because there has been always numbering like 0 - 7 in player combo boxes (and allocation indexes use numbers 0 - 7 as well), I changed my mind and changed it to Player0 - Player7 so that the numbering is unified. So my example is obsolete, just use Player0 - Player7.

oooh, alright, I though that maybe I did something wrong.

You can see that I am already using the feature, even with the custom colors for those "AI" that are not named as any faction; this is going to help me during this campaign since index 5 it's going to use Ordos color.

Link to comment
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.
Note: Your post will require moderator approval before it will be visible.

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...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.