Command & Conquer™ Remastered Collection

Command & Conquer™ Remastered Collection

Command & Conquer™ Remastered Collection Workshop
Create, share, and play mods for a custom C&C experience! A new Map Editor is also included. Welcome back, Commander.
Learn More
Nyerguds 8 11 Jul, 2022 @ 10:41am
2
1
I created an updated map editor
Latest version: v1.6.0.0 (September 22, 2024)
https://github.com/Nyerguds/MobiusMapEditor/releases

Quick summary:
The newest version adds the ability to open the game's .mix archives, making it incredibly easy to open all original missions as reference material to aid with scripting.
Other improvements include a more accurate overlap detection system, much faster saving of map thumbnails, pixel fonts for all classic mode indicators, and the program no longer auto-connecting to Steam when it starts, to allowing easier map testing.

This is all on top of the earlier version upgrades, including the ability to run independently from the C&C Remaster using the classic graphics from the 90's games, the ability to check map terrain passability, the ability to read custom rules from mods, a vastly optimised graphical updates system, multithreading to keep the UI responsive during loading and saving, drag and drop file loading support, map tile flood fill, turrets added to RA ships, an extensive analysis system telling you exactly what issues were encountered when loading a map, and so, so much more.


Reminder: DO NOT unpack this in the C&C Remastered Collection's install folder. It is absolutely unnecessary to overwrite any files of the installed game. Just make a new folder somewhere and dump it in.



Original post:

So, as most people know, the map editor has some issues. The special waypoints in TD are wrong due to some misguided dev putting in 8 multiplayer waypoints, and there are a bunch of random errors and usability issues.

In September 2021, Rampastring took it upon himself[ppmforums.com] to fix some of the most glaring issues, however, he soon stopped working on it, and on top of his fixes, his version also introduced a few serious problems. (Credit where due, though: he did some excellent work on this. The new item selection lists replacing the awkward image dropdown lists are beautiful.)

I've finally decided to continue this project, and have added a bunch of my own fixes on top of what Rampa built.

So, without further ado, I present: the C&C Remastered map editor, v1.4:

https://github.com/Nyerguds/MobiusMapEditor/releases/

Full list of my added changes:

  • Fixed Overlay height overflow bug in Rampa's new UI.
  • Fixed tiles list duplicating every time the "Map" tool window is opened in Rampa's version.
  • Added CONC and ROAD pavement to TD. They have no graphics, but at least now they are accepted by the editor and not discarded as errors.
  • Sorted all items in the lists (except map tiles) by key, which is usually a lot more straightforward.
  • Split off specific separate list for techno types (units/infantry/aircraft/...) usable in teamtypes.
  • Removed the Aircraft from the placeable units in TD.
  • Removed irrelevant orders from the unit orders list (Selling, Missile, etc.)
  • Fixed case sensitivity related crashes in TD teamtypes.
  • Triggers without a Teamtype will now automatically get "None" filled in as Teamtype, fixing the malfunctioning of their repeat status.
  • Added Ctrl-N, Ctrl+O, Ctrl+S etc shortcuts for the File menu.
  • Fixed double indicator on map tile selection window.
  • Fixed smudge reading in TD to allow 5 crater stages.
  • Added tool window to adjust crater stage.
  • Fixed Terrain objects in TD not saving their trigger. Note that only "Attacked" triggers work on them.
  • Red Alert "Spied by..." trigger event now shows the House to select. fixed properly on 2022-11-13; the event is simply "Spied on by anybody".
  • Added "Add" buttons in triggers and teamtypes dialogs.
  • Fixed tab order in triggers and teamtypes dialogs.
  • Fixed crash in "already exists" messages for triggers and teams.
  • Randomised tiberium on save, like the original WW editor does. (This is purely cosmetic; the game randomises it on map load anyway) Switched to a fixed random-seed on 2024-09-22
  • [EXPERIMENTAL] Added ability to place bibs. They won't show their full size in the editor at the moment, though, but they appear in-game as the full thing.
Last edited by Nyerguds; 15 Jan @ 10:41pm
< >
Showing 1-15 of 401 comments
Nyerguds 8 11 Jul, 2022 @ 11:52am 
Currently In the pipeline for the next release (v1.4.0.1):
  • Added Drag & Drop support for opening map files.
  • Added command line file argument support, which allows setting the editor as application for opening ini/mpr files.
  • House Edge reading now corrects values with case differences so they show up in the dropdown.
  • Centralised the House Edge array on the House class, and changed its order to a more logical North, East, South, West.
  • Fixed order of the Multi-House colours. Seems that the error is not in the editor but in bizarre mixed-up team color names in the remastered game itself.
  • Remapped Neutral (TD only) and Special as yellow, as they are in the game.
  • All tool windows will now save their position.
  • Tool windows for which no position was previously set will center themselves on the right edge of the editor.
  • Some things, like crates, were missing names. This has been fixed.
  • Objects will now show a real name and their internal name.
  • Added ASCII restriction to trigger and teamtype names, since the map formats don't support UTF-8. (Except on the Briefing, apparently, since the GlyphX part handles that.)
  • Made "Already exists" check on trigger and teamtype names case insensitive.
  • Changed the default build level in TD maps from 99 to 98.
  • The Briefing text area will now accept [Enter] for adding line breaks without this closing the window. Previously, [Ctrl]+[Enter] had to be used for this, which is pretty awkward.
  • The Briefing text area now has a scrollbar.
  • Fixed placement of illegal tiles caused by incorrect filtering on which tiles from a template should be included. This is the problem which caused tiles that showed as black blocks in classic graphics. It is also the problem that made Red Alert maps contain indestructible bridges.
  • Map tile placement can now be dragged, allowing easily filling an area with water or other tiles. This also works for removing tiles.
  • Removing tiles will now obey the actual occupied cells of the selected tile, rather than just clearing the bounding box, making it more intuitive.
  • Triggers and teamtypes dialogs have a new logic for generating names for new entries that should never run out.
  • Triggers and teamtypes dialogs support the delete key for deleting an entry in the list.
  • Triggers and teamtypes dialogs have "Rename" added to the context menu when right-clicking an item.
  • Triggers and teamtypes dialogs now warn when cancelling if changes were made.
  • Added "All supported types (*.ini;*.bin;*.mpr)" as default filter when opening files.
Last edited by Nyerguds; 12 Jul, 2022 @ 3:13pm
DDF3 40 11 Jul, 2022 @ 5:07pm 
I don't suppose you fixed the Red Alert triggers Action Text_ID semi crash when it is selected

I think the box starts at ID 0 or -1 when it should start at 1


"The Briefing text area will now accept [Enter] for adding line breaks without this closing the window. Previously, [Ctrl]+[Enter] had to be used for this, which is pretty awkward."

I just used to fill it with spaces until it goes to the next line ,m yeah the window closing when you hit Enter was a pain in the ass
Last edited by DDF3; 11 Jul, 2022 @ 5:11pm
Nyerguds 8 12 Jul, 2022 @ 1:08am 
Originally posted by DDF3:
I don't suppose you fixed the Red Alert triggers Action Text_ID semi crash when it is selected

I think the box starts at ID 0 or -1 when it should start at 1
I'll look into this. Can you tell me exactly how to reproduce that and what the error is? I've had issues like this that were caused by case sensitivity in TD, but in RA all that is just numbers and not text.

Originally posted by DDF3:
"The Briefing text area will now accept [Enter] for adding line breaks without this closing the window. Previously, [Ctrl]+[Enter] had to be used for this, which is pretty awkward."

I just used to fill it with spaces until it goes to the next line ,m yeah the window closing when you hit Enter was a pain in the ass
The Remaster actually supports line breaks in briefings; they get written in the ini as @ characters. RA always supported this, but now it's a general thing also applicable to TD.

In fact, Remaster briefings have full unicode support. Just never open a mission with unicode characters in the briefing in Notepad and then save, because that'll add a BOM block at the start of the file that identifies it as a UTF-8 file, and that'll make the Remaster no longer recognise it as valid C&C map.
Last edited by Nyerguds; 12 Jul, 2022 @ 1:35am
DontCryJustDie 7 12 Jul, 2022 @ 3:19am 
Hey Nyerguds could you add support for Overlay owners? My mod already supports this since Beta 19. See this[pastebin.com] example of edited GDI 8 A mission, scroll down to [OVERLAY] section at line 285.
Nyerguds 8 12 Jul, 2022 @ 5:14am 
My primary goal for this is to fix errors in it, not expanding the format. I'm currently fixing the bug that causes people to make maps with indestructible bridges in RA.

Besides, you know you can just place those down in [Structures], right? Would seem more logical for me to support that instead.
Last edited by Nyerguds; 12 Jul, 2022 @ 5:14am
DDF3 40 12 Jul, 2022 @ 5:47am 
Add a New RA Trigger

Add event Elapsed Time : 3

Add Action Text Trigger , you should see an exception appear , Press Continue.

I think the Box is starting out at 0 when it throws the exception, but it displays 1 which is a valid Text ID


As well you can't input anything higher than 210 without having to hand edit the mpr file , in case you have added new lines via ModText.csv , But i can live with it being capped at 210
Last edited by DDF3; 12 Jul, 2022 @ 5:55am
DDF3 40 12 Jul, 2022 @ 5:59am 
Originally posted by Nyerguds:
My primary goal for this is to fix errors in it, not expanding the format. I'm currently fixing the bug that causes people to make maps with indestructible bridges in RA.

Besides, you know you can just place those down in [Structures], right? Would seem more logical for me to support that instead.


There is two indestructible bridges in RA.... I will let you know which ones you can blow and which two you cant

EDIT:

Bridge1x and Bridge 2x can not be destroyed , if you use a tanya you wont see the C4 icon while hovering over these two bridges.

Bridges 1,2 Bridge * h , Br*a can be destroyed

I covered it in my guide Blowing up Bridges section

https://steamhost.cn/steamcommunity_com/sharedfiles/filedetails/?id=2781597329
Last edited by DDF3; 12 Jul, 2022 @ 6:31am
Nyerguds 8 12 Jul, 2022 @ 6:23am 
Originally posted by DDF3:
There is two indestructible bridges in RA.... I will let you know which ones you can blow and which two you cant

Bridge1x and Bridge 2x can not be destroyed , if you use a tanya you wont see the C4 icon while hovering over these two bridges.

Bridges 1,2 Bridge * h , Br*a can be destroyed

I covered it in my guide Blowing up Bridges section
The issue is not that the bridges are indestructible. The problem is that those tilesets aren't supposed to be bridges at all. They're just the framing cells around a bridge, applicable to all three damage states of the bridge. Likewise, the bridges themselves should not have those framing cells.

The Remaster devs just took some shortcuts there and didn't cut out the different parts, and whoever made the editor naively assumed that all cells that are present in the Remastered graphics are cells that you're supposed to be able to place down. When you switch to Classic Mode you can immediately see that all of these "indestructible bridge" tiles show up as non-refreshing corrupted black tiles.

This is what those "indestructible bridge" tiles are really supposed to look like. Behold, the real BRIDGE1X and BRIDGE2X tilesets:

https://i.imgur.com/6rtZfji.png

They will most likely not even act correctly in terms of passability; the whole illegal part is probably just seen as clear terrain.

Anyway, I'm fairly sure I got them all.
Last edited by Nyerguds; 10 Jan, 2024 @ 1:16am
DontCryJustDie 7 12 Jul, 2022 @ 10:18am 
Originally posted by Nyerguds:
My primary goal for this is to fix errors in it, not expanding the format.

That is unfortunate.

Originally posted by Nyerguds:
Besides, you know you can just place those down in [Structures], right? Would seem more logical for me to support that instead.

No I didn't know and I'm also not a fan of it because walls are not supposed to be under the Structure section because they are Overlays so it isn't that logical for me. The Overlay class constructor also has a parameter to specify the Owner and the original read ini code for that class is also ready to read more comma separated values from the ini entry. The only change that needs to be made is to add one line and change another. Also nothing would break if the Owner is not present or the client doesn't has support to read the Owner.
Nyerguds 8 12 Jul, 2022 @ 10:23am 
But most overlays don't even have an owner. Only the ones that happen to be hybrid overlay/structure types, namely, the walls. And those only have an owner because the game considers them to be structures. I don't see any point in supporting something that doesn't work in the vanilla unmodded game if there's an alternative that does work, and does the same thing.

You might want to check the structures list in the source code, by the way. The walls are absolutely in there.

Originally posted by DontCryJustDie:
Also nothing would break if the Owner is not present or the client doesn't has support to read the Owner.
It will invariably break expectation. Because if people see the option for that in the editor, they will expect it to work in the game.

I'm trying to make this editor more user-friendly, not more confusing.
Last edited by Nyerguds; 12 Jul, 2022 @ 11:01am
DontCryJustDie 7 12 Jul, 2022 @ 12:24pm 
But most overlays don't even have an owner. Only the ones that happen to be hybrid overlay/structure types, namely, the walls.

My bad, my request should have probably worded like this: "Could you please add Owner support to the walls menu?".

You might want to check the structures list in the source code, by the way. The walls are absolutely in there.

They are listed there for sidebar support.

It will invariably break expectation. Because if people see the option for that in the editor, they will expect it to work in the game.

Could have been marked as a mod feature.

Anyways I accept that you don't want to add new features that require mods and since you posted your code one could do itself.
Nyerguds 8 12 Jul, 2022 @ 1:45pm 
Originally posted by DontCryJustDie:
They are listed there for sidebar support.
And to define the object price.

But yea, feel free to add features to release a version for your own mod.
Last edited by Nyerguds; 12 Jul, 2022 @ 1:46pm
Nyerguds 8 12 Jul, 2022 @ 11:43pm 
Originally posted by DDF3:
Add a New RA Trigger

Add event Elapsed Time : 3

Add Action Text Trigger , you should see an exception appear , Press Continue.

I think the Box is starting out at 0 when it throws the exception, but it displays 1 which is a valid Text ID
Found it. And indeed, all newly made trigger action objects start off as containing "0" for their data value, but the up/down control gets a minimum and maximum assigned to it. I now made sure the value is automatically within the bounds.

Originally posted by DDF3:
As well you can't input anything higher than 210 without having to hand edit the mpr file , in case you have added new lines via ModText.csv , But i can live with it being capped at 210
Well, the point I made to DCJD still stands; I don't want to add stuff in the vanilla editor that'll just not work in the game. In fact, I'm not even sure that works through ModText.csv since the old engine will probably also evaluate that.

Though I guess an actual selectable list indicating what those text lines are could be nice. I dunno.

There are more issues with RA I need to solve, like teamtype actions being completely undocumented. I might in fact just completely redo the teamtypes list; those tables are awkward.
Last edited by Nyerguds; 13 Jul, 2022 @ 2:30am
Nyerguds 8 13 Jul, 2022 @ 12:38am 
v1.4.0.1 is now released :)

https://github.com/Nyerguds/CnCTDRAMapEditor/releases/tag/v1.4.0.1

The most major fix in this is definitely the RA bridges one. It now only shows the real tiles to place down, and any of these "ghost tiles" that cause the indestructible bridges bug will be wiped on mission load.

All changes:
  • Added "All supported types (*.ini;*.bin;*.mpr)" as default filter when opening files.
  • Added Drag & Drop support for opening map files.
  • Added command line file argument support, which allows setting the editor as application for opening ini/mpr files.
  • House Edge reading now corrects values with case differences so they show up in the dropdown.
  • Centralised the House Edge array on the House class, and changed its order to a more logical North, East, South, West.
  • Fixed order of the Multi-House colours. It seems the error is not in the editor, but in bizarre mixed-up team color names in the remastered game itself.
  • Remapped Neutral (TD only) and Special as yellow, as they are in the game.
  • All tool windows will now save their position.
  • Tool windows for which no position was previously set will center themselves on the right edge of the editor.
  • Some things, like crates, were missing names. This has been fixed.
  • All objects except map tilesets will now show a real name and their internal code.
  • Added ASCII restriction to trigger and teamtype names, since the map formats don't support UTF-8. (Except on the Briefing, apparently, since the GlyphX part handles that.)
  • Made "Already exists" check on trigger and teamtype names case insensitive, since that is how the game handles them.
  • Triggers and teamtypes dialogs have a new logic for generating names for new entries that should never run out.
  • Triggers and teamtypes dialogs support the delete key for deleting an entry in the list.
  • Triggers and teamtypes dialogs have "Rename" added to the context menu when right-clicking an item.
  • Triggers and teamtypes dialogs now warn when cancelling if changes were made.
  • "Add" button in triggers and teamtypes dialogs gets disabled when the internal maximum amount of items for the type is reached.
  • Changed the default build level in TD maps from 99 to 98. Level 99 allows building illegal objects that can break the game.
  • The Briefing text area will now accept [Enter] for adding line breaks without this closing the window. Previously, [Ctrl]+[Enter] had to be used for this, which is pretty awkward.
  • The Briefing text area now has a scrollbar.
  • Fixed placement of illegal tiles caused by incorrect filtering on which tiles from a template should be included. This is the problem which caused tiles that showed as black blocks in classic graphics. It is also the problem that made Red Alert maps contain indestructible bridges.
  • Map tile placement can now be dragged, allowing easily filling an area with water or other tiles. This also works for removing tiles.
  • Removing tiles will now obey the actual occupied cells of the selected tile, rather than just clearing the bounding box, making it more intuitive.
  • Creating an RA trigger with Action "Text Trigger" will no longer cause an error to be shown.
  • Trigger controls no longer jump around slightly when selecting different options.
Last edited by Nyerguds; 13 Jul, 2022 @ 1:35am
DDF3 40 13 Jul, 2022 @ 7:54am 
Originally posted by Nyerguds:
Originally posted by DDF3:
Add a New RA Trigger

Add event Elapsed Time : 3

Add Action Text Trigger , you should see an exception appear , Press Continue.

I think the Box is starting out at 0 when it throws the exception, but it displays 1 which is a valid Text ID
Found it. And indeed, all newly made trigger action objects start off as containing "0" for their data value, but the up/down control gets a minimum and maximum assigned to it. I now made sure the value is automatically within the bounds.

Originally posted by DDF3:
As well you can't input anything higher than 210 without having to hand edit the mpr file , in case you have added new lines via ModText.csv , But i can live with it being capped at 210
Well, the point I made to DCJD still stands; I don't want to add stuff in the vanilla editor that'll just not work in the game. In fact, I'm not even sure that works through ModText.csv since the old engine will probably also evaluate that.

Though I guess an actual selectable list indicating what those text lines are could be nice. I dunno.

There are more issues with RA I need to solve, like teamtype actions being completely undocumented. I might in fact just completely redo the teamtypes list; those tables are awkward.


I thought that was happening , and i forgot to look into it when i was doing the spied by event.

The game will use new lines added via modtext.csv , but like i said i wont loose any sleep over it . It is indeed easier to just modify one of the existing 1 -210 lines .


RA Mission Actions
*********** Attack Options ************* 1 Anything 2 Buildings - any 3 Harvesters 4 Infantry 5 Vehicles - any 6 Ships - any 7 Factories 8 Base Defences 9 Base Threats 10 Power Facilities 11 Fake Buildings ********* ATTACK WAYPOINT *********** Enter the way point you want attacked ********* CHANGE FORMATION ********** 1 = Tight // Tight grouping (vulnerable units in center) 2 = Loose // Loose grouping (one cell separation between units) 3 = Wedge North // Wedge shape 4 = Wedge East // Wedge shape 5 = Wedge South // Wedge shape 6 = Wedge West // Wedge shape 7 = Line N/S // Column formation 8 = Line E/W // Line formation *************** Move To WayPoint ************* Enter the waypoint you want the team to move to *************** Move to Cell ***************** Enter the Cell Number You can find the Cell Number by going to MAP and moving the mouse to where you want the team To Move to , Look down at the bottm left of the editor , the cell number is displayed there ************** Guard Area ******************* Enter the time in 1/10 of a minute that you want the team to guard for eg: 100 = 10 mins ************* Jump To Line ***************** This makes the team loop the mission commands The line number starts at 0 - 19(max) So the first line would be = 0 second = 1 ************* Attack Tarcom **************** Use the base Number. 83886080 // Building 218103808 // INFANTRY 469762048 // UNIT 503316480 // VESSEL Plus The Number from the MPR file for the thing to attack EG: [UNITS] 000=England,4tnk,256,1414,64,Guard,None 001=USSR,1tnk,256,1060,0,Sleep,None Base Number = 469762048 + 1 = 469762049 will make the reinforcement attack the ussr tank ************ Unload ************************ Unloads transport vehicles *********** Deploy ************************ Deploys vehicles that can deploy Like an MCV ********** Follow Friendlies ************** Makes you team follow the closest friendly units ********** DO THIS *********************** 0 Sleep // Do nothing whatsoever. 1 Attack // Attack nearest enemy. 2 Move // Guard location or unit. 3 Qmove // A queue list movement mission. 4 Retreat // Return home for R & R. 5 Guard // Stay still 6 Sticky // Stay still -- never recruit into a team. 7 Enter // Move into object cooperatively. 8 Capture // Move into in order to capture. 9 Harvest // Hunt for and collect nearby Tiberium. 10 Area Guard // Active guard of area. 11 Return (unused)// Head back to refinery. 12 Stop // Sit still. 13 Ambush (unused)// Wait until discovered 14 Hunt // Active search and destroy. 15 Unload // Search for and deliver cargo. 16 Sabotage // Move into in order to destroy. 17* Construction (Buildings Only)// Building buildup operation. 18* Selling (Buildings Only)// Building builddown operation. 19* Repair (Buildings Only)// Repair process mission 20 Rescue 21* Missile (Buildings Only) 22 Harmless // Sit around and don't appear like a threat. ******************* Set Global ************** Sets a Global Variable ******************* Invulnerable ************ Sets the units to be invulnerable for agiven time ****************** Load Onto Transport ****** To load onto a transport the units must already be on the map. You then pick the units EG: e1 x 5 ,tran x 1 , pick a waypoint of where they will load. EG: move the team to waypoint #6, Load Onto Transport :0 then Move and unload as you want , note they may not follow orders after having been unloaded. *****************Spy on Blg @ WayPoint ****** Makes a spy , spy the blg at the way Point **************** Patrol to waypoint ******** Patrols to the next waypoint engaging enemies

Attack tarcom is supposed to be abale to attack a cell as well , but i couldn't get it to work
Last edited by DDF3; 13 Jul, 2022 @ 8:02am
< >
Showing 1-15 of 401 comments
Per page: 1530 50