[MOD] RA Classic - a Red Alert 1 inspired mod

Information and discussion for custom maps and mods.
Kathreinerle
Posts: 2
Joined: Fri Nov 23, 2012 11:06 am

Post by Kathreinerle » Fri Nov 23, 2012 11:09 am

i also wanted to know how the progress is.. maybe some kind of update here ? :D

psydev
Posts: 84
Joined: Sat Mar 31, 2012 4:49 am

Post by psydev » Wed Dec 12, 2012 10:37 am

I am willing to help with a Classic fork, to work on the CNC mod (and maybe RA if I have time).
I identified some important issues that have to be fixed with the engine first, before I think the C&C community will be willing to migrate:

-Orca doesn't return to helipad automatically
-Problems with Orca on repair bay
It should return to repair bay when you press F
-MRLS should have a turret but not be able to fire while it moves. Currently the engine only allows a vehicle firing forward or firing from a turret while moving. This unit firing while moving is too powerful.
-Production speed should be modifiable when there are multiple buildings. Is this present now?

There are other issues that require some programming intervention but those are the most critical I can think of at the moment.

jim2029
Posts: 12
Joined: Mon Jun 13, 2011 5:11 am
Location: Michigan

Post by jim2029 » Thu Dec 20, 2012 10:26 pm

So is this project still alive? I like to see this happen... also maybe make the multiplayer client look like the wold Westwood Online client that was used back in the day to connect to multiplayer games.

Matt
Posts: 1023
Joined: Tue May 01, 2012 12:21 pm
Location: Germany

Post by Matt » Sun Jan 13, 2013 11:34 am

I added left-click orders (classic mouse-style) at https://github.com/OpenRA/OpenRA/pull/2579 If your fork already does this better, please contribute. It is hard to tell as you deleted the revision history in https://github.com/Iran/ClassicRA/commits/master and no easy way to compare your changes to vanilla OpenRA.

Matt
Posts: 1023
Joined: Tue May 01, 2012 12:21 pm
Location: Germany

Problems

Post by Matt » Sun Jan 13, 2013 12:05 pm

Gave it a try but your version of OpenRA does not compile completely on Linux:

Code: Select all

CSC mods/cnc/OpenRA.Mods.Cnc.dll
OpenRA.Mods.Cnc/Widgets/ProductionPaletteWidget.cs(17,30): error CS0234: The type or namespace name `Buildings' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                              
OpenRA.Mods.Cnc/Widgets/ProductionPaletteWidget.cs(18,30): error CS0234: The type or namespace name `Orders' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                                 
OpenRA.Mods.Cnc/RenderCargo.cs(18,61): error CS0246: The type or namespace name `CargoInfo' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/RenderBuildingRefinery.cs(19,44): error CS0246: The type or namespace name `RenderBuildingInfo' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/RenderBuildingRefinery.cs(24,40): error CS0246: The type or namespace name `RenderBuilding' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/TiberiumRefinery.cs(16,45): error CS0246: The type or namespace name `OreRefineryInfo' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/TiberiumRefinery.cs(21,41): error CS0246: The type or namespace name `OreRefinery' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/IonCannonPower.cs(16,36): error CS0246: The type or namespace name `SupportPowerInfo' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/IonCannonPower.cs(21,32): error CS0246: The type or namespace name `SupportPower' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/Missions/CncShellmapScript.cs(14,30): error CS0234: The type or namespace name `Activities' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                                  
OpenRA.Mods.Cnc/Missions/CncShellmapScript.cs(15,30): error CS0234: The type or namespace name `Move' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                                        
OpenRA.Mods.Cnc/Missions/Gdi01Script.cs(16,30): error CS0234: The type or namespace name `Activities' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                                        
OpenRA.Mods.Cnc/Missions/Gdi01Script.cs(17,30): error CS0234: The type or namespace name `Move' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                                              
OpenRA.Mods.Cnc/Missions/Gdi01Script.cs(23,66): error CS0246: The type or namespace name `LoadWidgetAtGameStartInfo' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                          
OpenRA.Mods.Cnc/ProductionAirdrop.cs(14,30): error CS0234: The type or namespace name `Activities' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                                           
OpenRA.Mods.Cnc/ProductionAirdrop.cs(15,30): error CS0234: The type or namespace name `Air' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?
OpenRA.Mods.Cnc/ProductionAirdrop.cs(29,35): error CS0246: The type or namespace name `Production' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/Activities/HarvesterDockSequence.cs(14,30): error CS0234: The type or namespace name `Activities' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                            
OpenRA.Mods.Cnc/Activities/HarvesterDockSequence.cs(15,30): error CS0234: The type or namespace name `Move' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                                  
OpenRA.Mods.Cnc/RenderGunboat.cs(17,35): error CS0246: The type or namespace name `RenderUnitInfo' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/Widgets/Logic/CncMenuLogic.cs(12,30): error CS0234: The type or namespace name `Widgets' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                                     
OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs(13,30): error CS0234: The type or namespace name `Orders' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                              
OpenRA.Mods.Cnc/Widgets/Logic/CncIngameChromeLogic.cs(14,30): error CS0234: The type or namespace name `Buildings' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                           
OpenRA.Mods.Cnc/Widgets/Logic/CncSettingsLogic.cs(18,30): error CS0234: The type or namespace name `Widgets' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                                 
OpenRA.Mods.Cnc/Widgets/Logic/ProductionTooltipLogic.cs(15,30): error CS0234: The type or namespace name `Buildings' does not exist in the namespace `OpenRA.Mods.RA.Classic'. Are you missing an assembly reference?                                                                                                                                                                         
OpenRA.Mods.Cnc/Widgets/SupportPowersWidget.cs(38,26): error CS0246: The type or namespace name `SupportPowerManager' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                         
OpenRA.Mods.Cnc/Widgets/SupportPowersWidget.cs(32,24): error CS0246: The type or namespace name `SupportPowerManager' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                         
OpenRA.Mods.Cnc/Widgets/SupportPowersWidget.cs(66,32): error CS0246: The type or namespace name `SupportPowerManager' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                         
OpenRA.Mods.Cnc/Widgets/ProductionPaletteWidget.cs(28,29): error CS0246: The type or namespace name `ProductionItem' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                          
OpenRA.Mods.Cnc/Widgets/ProductionPaletteWidget.cs(43,17): error CS0246: The type or namespace name `ProductionQueue' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                         
OpenRA.Mods.Cnc/Widgets/ProductionPaletteWidget.cs(45,24): error CS0246: The type or namespace name `ProductionQueue' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                         
OpenRA.Mods.Cnc/Widgets/ProductionTabsWidget.cs(25,24): error CS0246: The type or namespace name `ProductionQueue' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                            
OpenRA.Mods.Cnc/Widgets/ProductionTabsWidget.cs(35,48): error CS0246: The type or namespace name `ProductionQueue' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                            
OpenRA.Mods.Cnc/Widgets/ProductionTabsWidget.cs(117,24): error CS0246: The type or namespace name `ProductionQueue' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                           
OpenRA.Mods.Cnc/RenderCargo.cs(29,17): error CS0246: The type or namespace name `Cargo' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/RenderBuildingRefinery.cs(21,40): error CS0115: `OpenRA.Mods.Cnc.RenderBuildingRefineryInfo.Create(OpenRA.ActorInitializer)' is marked as an override but no suitable method found to override                                                                                                                                                                                
OpenRA.Mods.Cnc/RenderBuildingRefinery.cs(30,70): error CS0246: The type or namespace name `RenderBuildingInfo' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/RenderBuildingRefinery.cs(51,38): error CS0115: `OpenRA.Mods.Cnc.RenderBuildingRefinery.DamageStateChanged(OpenRA.Actor, OpenRA.Traits.AttackInfo)' is marked as an override but no suitable method found to override                                                                                                                                                         
OpenRA.Mods.Cnc/TiberiumRefinery.cs(18,40): error CS0115: `OpenRA.Mods.Cnc.TiberiumRefineryInfo.Create(OpenRA.ActorInitializer)' is marked as an override but no suitable method found to override                                                                                                                                                                                            
OpenRA.Mods.Cnc/TiberiumRefinery.cs(26,42): error CS0115: `OpenRA.Mods.Cnc.TiberiumRefinery.DockSequence(OpenRA.Actor, OpenRA.Actor)' is marked as an override but no suitable method found to override                                                                                                                                                                                       
OpenRA.Mods.Cnc/IonCannonPower.cs(18,40): error CS0115: `OpenRA.Mods.Cnc.IonCannonPowerInfo.Create(OpenRA.ActorInitializer)' is marked as an override but no suitable method found to override
OpenRA.Mods.Cnc/IonCannonPower.cs(25,78): error CS0246: The type or namespace name `SupportPowerManager' could not be found. Are you missing a using directive or an assembly reference?
OpenRA.Mods.Cnc/IonCannonPower.cs(31,38): error CS0115: `OpenRA.Mods.Cnc.IonCannonPower.Activate(OpenRA.Actor, OpenRA.Order)' is marked as an override but no suitable method found to override
OpenRA.Mods.Cnc/ProductionAirdrop.cs(26,40): error CS0115: `OpenRA.Mods.Cnc.ProductionAirdropInfo.Create(OpenRA.ActorInitializer)' is marked as an override but no suitable method found to override                                                                                                                                                                                          
OpenRA.Mods.Cnc/ProductionAirdrop.cs(33,38): error CS0115: `OpenRA.Mods.Cnc.ProductionAirdrop.Produce(OpenRA.Actor, OpenRA.ActorInfo)' is marked as an override but no suitable method found to override                                                                                                                                                                                      
OpenRA.Mods.Cnc/Activities/HarvesterDockSequence.cs(26,26): error CS0246: The type or namespace name `Harvester' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                              
OpenRA.Mods.Cnc/Activities/HarvesterDockSequence.cs(27,26): error CS0246: The type or namespace name `RenderUnit' could not be found. Are you missing a using directive or an assembly reference?                                                                                                                                                                                             
OpenRA.Mods.Cnc/RenderGunboat.cs(19,40): error CS0115: `OpenRA.Mods.RA.Classic.Render.RenderGunboatInfo.Create(OpenRA.ActorInitializer)' is marked as an override but no suitable method found to override                                                                                                                                                                                    
Compilation failed: 48 error(s), 0 warnings
make: *** [mods/cnc/OpenRA.Mods.Cnc.dll]
Attachments
classicra.jpg
the power bar is broken and the game froze after 45 seconds
classicra.jpg (514.51 KiB) Viewed 5000 times

Iran
Posts: 92
Joined: Wed Sep 08, 2010 3:16 pm

Post by Iran » Sat Jan 19, 2013 10:13 am

I haven't worked on this for a while and I'm not sure I will. I've been patching the original Red Alert, making it modular, easy to download, install, configure etc.

User avatar
JOo
Posts: 510
Joined: Wed Jan 25, 2012 8:12 pm

Post by JOo » Mon Jan 21, 2013 1:30 am

maybe my new UI for OpenRa is not interesting enough ... so i will give it free for any project ... maybe youre interested ... i did also the UI - Graphics for mailaenders D2k ...

not finished ... but im working on it

Image

Matt
Posts: 1023
Joined: Tue May 01, 2012 12:21 pm
Location: Germany

Post by Matt » Mon Jan 21, 2013 2:37 am

Okay left-click orders are now part of OpenRA and I also polished Speedup of ClassicProductionQueue at https://github.com/OpenRA/OpenRA/pull/2602 so you can make a ra-classic mod without creating a dead end OpenRA fork.

Generalcamo
Posts: 50
Joined: Sun Sep 26, 2010 12:06 am

Post by Generalcamo » Tue Jan 22, 2013 1:47 am

It would be cool if this was part of the official OpenRA build instead of a complete fork, as that would avoid separating the small community. Also, modders and mappers could use your features in their maps, and you would be a big part of it.

Matt
Posts: 1023
Joined: Tue May 01, 2012 12:21 pm
Location: Germany

Post by Matt » Thu Jan 24, 2013 9:50 pm

I made fog of war a yaml setting in https://github.com/OpenRA/OpenRA/pull/2614 Seems to be the last engine change required for people to publish an OpenRA compatible classic mod.

A better AI is also awaiting to be merged in https://github.com/OpenRA/OpenRA/pull/2484 and Dan has converted all the classic maps which can be downloaded at http://www.sleipnirstuff.com/forum/view ... 83&t=16139

Generalcamo
Posts: 50
Joined: Sun Sep 26, 2010 12:06 am

Post by Generalcamo » Fri Jan 25, 2013 11:41 pm

One last thing is needed: Strafing. In the original RA, the yak would dump all of its ammo in a line. That will be need here.

psydev
Posts: 84
Joined: Sat Mar 31, 2012 4:49 am

Post by psydev » Sat Jan 26, 2013 8:58 am

Iran wrote: I placed the project on Github!

https://github.com/Iran/ClassicRA/
Is this project on Github for RA only or is it also supposed to enable a CNC Classic mod as well?

Matt
Posts: 1023
Joined: Tue May 01, 2012 12:21 pm
Location: Germany

Post by Matt » Sat Jan 26, 2013 12:26 pm

Okay, I started to collect what we have in a way that allows it to be integrated and shipped with OpenRA releases at https://github.com/Mailaender/OpenRA/compare/classic-ra
  • TargetLines removed (the MoveFlash can be re-added later https://github.com/OpenRA/OpenRA/issues/2592)
  • Fog of War removed
  • Game rules from ClassicRA 0.1 merged onto current bleed (now with ChronoTank, Demo Truck, Mechanic)
  • UI reskin by JOo (it has to be visually distinct)
  • speedup for ClassicProductionQueue
  • left-mouse orders
  • hotkey removal (do we really want that)
psydev: I will create a cnc-classic development branch if you contribute the yaml rules.
Attachments
production-bar-reskin.png
Production bar reskin WIP based on what JOo posted.
production-bar-reskin.png (71.16 KiB) Viewed 4675 times
westwood-maps.png
Legacy maps loading fast thanks to https://github.com/OpenRA/OpenRA/pull/2581
westwood-maps.png (76.25 KiB) Viewed 4675 times

User avatar
BaronOfStuff
Posts: 438
Joined: Sun May 22, 2011 7:25 pm

Post by BaronOfStuff » Sat Jan 26, 2013 12:57 pm

For what it's worth, here's the Soviet equivalent to JOo's work:
Image

Matt
Posts: 1023
Joined: Tue May 01, 2012 12:21 pm
Location: Germany

Post by Matt » Sat Jan 26, 2013 4:48 pm

I did the same for https://github.com/Mailaender/OpenRA/co ... nc-classic so psydev and everyone else interested has something to build upon. It includes the maps converted from c&c and covert ops by Dan. The UI is a mash-up of Classic TD interface skin by Harisson and something I dug up in OpenRA's commit history most likely original work by sleipnir. It needs some love, but it is a start.
Attachments
cnc-classic-lobby.png
Lobby code with some strange visual artifacts otherwise working.
cnc-classic-lobby.png (123.68 KiB) Viewed 4634 times
cnc-classic-splash.png
The old splash screen of OpenRA's cnc mod.
cnc-classic-splash.png (30.08 KiB) Viewed 4634 times
cnc-classic-maps.png
Maps which are all quite small and definitely designed for weaker computers and low resolution by Westwood.
cnc-classic-maps.png (149.87 KiB) Viewed 4634 times

Post Reply