Gameanater
  • Gameanater
  • 55.5% (Neutral)
  • General Topic Starter
12 years ago
Is it possible to have a multiplayer map with changed game parameters through a map.ini? Or is it like .str's and .ini's won't be downloaded?
Any old friends still on here can add me on discord @jcdenton2187. I'm far more likely to respond there.
Sponsor
VTULCobra
12 years ago
You will get a mismatch error if you use .ini files in multiplayer maps, sorry.
Rank up!
Gameanater
  • Gameanater
  • 55.5% (Neutral)
  • General Topic Starter
12 years ago

You will get a mismatch error if you use .ini files in multiplayer maps, sorry.

Originally Posted by: VTULCobra 



Well that's a bummer, I was hoping to give Super-Lotus a knife and give a bunch of units lasers for an AOD. 😞 Oh well, thanks. 😄
Any old friends still on here can add me on discord @jcdenton2187. I'm far more likely to respond there.
jman
  • jman
  • 50.25% (Neutral)
  • Private
12 years ago
Map.ini works in multiplayer maps, but it is required all players to have the map with that specific map.ini file before they launch C&C Generals ZH.

Map.ini is also downloaded and transfered using the ingame build ftp map transfering.
So this is not a problem.So once all players have your map, just tell them to restart their game.

Can you post how you add knife to lotus?
Lithium
12 years ago
If the code of the map.ini it's done without errors, the game doesn't crash in multiplayer. I know many people think that map.ini files crashes multiplayer games, but I use it in most of my maps without problems (I mean very large codes).

Jman is right, map.ini file and .str file it's also downloaded and transfered to the other playes in multiplayer games, then I think it is the best way to modify a specific map for a multiplayer game.
VTULCobra
12 years ago
We are talking bigger codes, doing like Annihilationzh did and switched out the MiG missiles with Nuclear Missiles. This will mismatch the match in multiplayer, wether both players have the ini or not.

Edit: Also, this is multiplayer (humans). Not mulitplayer with AI.
Rank up!
Lithium
12 years ago

We are talking bigger codes, doing like Annihilationzh did and switched out the MiG missiles with Nuclear Missiles. This will mismatch the match in multiplayer, wether both players have the ini or not.

Edit: Also, this is multiplayer (humans). Not mulitplayer with AI.

Originally Posted by: VTULCobra 




Gameanater is asking for make a "Super-Lotus" with a knife and give a bunch of units laser, this is not a big code, anyway you can make with map.ini files all the big code what you want.


I fix the Annihilationzh code for Migs with Nuclear Missiles, only for make an example, now you can use it in a map.ini file for multiplayer game, with or without AI (testing in Generals Vanilla and Zero Hour).

Object NapalmMissile
 

 RemoveModule DeathModuleTag_01
 RemoveModule DeathModuleTag_02
 RemoveModule DeathModuleTag_03
 RemoveModule ModuleTag_07


 ReplaceModule ModuleTag_01
  Draw               = W3DModelDraw ModuleTag_01_Override
    OkToChangeModelColor = Yes
    ConditionState   = NONE
      Model          = NBNRocket
    End
    ConditionState   = DAMAGED REALLYDAMAGED RUBBLE
      Model          = NONE
    End
  End
 End


AddModule
  Behavior = NeutronMissileUpdate ModuleTag_NMU
    DistanceToTravelBeforeTurning = 300       ; goes straight up a long ways first
    MaxTurnRate = 7200                        ; huge, since it turns off-camera
    ForwardDamping = 0.1
    RelativeSpeed = 2.0
    LaunchFX = FX_NeutronMissileLaunch
    IgnitionFX = FX_NeutronMissileIgnition
    TargetFromDirectlyAbove = 500      ; aim for an intermed spot directly above the target, so we come straight down onto it
    SpecialAccelFactor = 1
    SpecialSpeedTime = 1500
    SpecialSpeedHeight = 160
    SpecialJitterDistance = 0.4
    DeliveryDecalRadius = 210
    DeliveryDecal
      Texture           = SCCNuclearMissile_China
      Style             = SHADOW_ALPHA_DECAL
      OpacityMin        = 25%
      OpacityMax        = 50%
      OpacityThrobTime  = 500
      Color             = R:255 G:0 B:0 A:255 
      OnlyVisibleToOwningPlayer = Yes
    End
  End
 End

AddModule
  Behavior = HeightDieUpdate ModuleTag_HDU
    TargetHeight        = 100.0
    TargetHeightIncludesStructures = No
    OnlyWhenMovingDown  = Yes
    SnapToGroundOnDeath = Yes
    InitialDelay                    = 1000 ; Can't explode in the first second so we don't explode on the pad
  End
 End
AddModule
  Behavior = NeutronMissileSlowDeathBehavior ModuleTag_NMSDB
    DestructionDelay    = 3501
    ScorchMarkSize      = 320
    FXList              = FX_Nuke
     
    Blast1Enabled       = Yes
    Blast1Delay         = 580     ;in milliseconds
    Blast1ScorchDelay   = 100     ;in milliseconds
    Blast1InnerRadius   = 60.0    ;objects inside this get the full damage
    Blast1OuterRadius   = 60.0    ;objects inside this get some of the full damage
    Blast1MaxDamage     = 1000.0     ;damage within inner radius of blast
    Blast1MinDamage     = 1000.0     ;always do at least this much damage to objects
    Blast1ToppleSpeed   = 0.5     ;higher #'s topple faster
    Blast1PushForce     = 10.0    ;higher #'s push more
     
    Blast2Enabled       = Yes
    Blast2Delay         = 660    ;in milliseconds
    Blast2ScorchDelay   = 180     ;in milliseconds
    Blast2InnerRadius   = 90.0    ;objects inside this get the full damage
    Blast2OuterRadius   = 90.0    ;objects inside this get some of the full damage
    Blast2MaxDamage     = 1000.0     ;damage within inner radius of blast
    Blast2MinDamage     = 1000.0     ;always do at least this much damage to objects
    Blast2ToppleSpeed   = 0.45    ;higher #'s topple faster
    Blast2PushForce     = 8.0     ;higher #'s push more
     
    Blast3Enabled       = Yes
    Blast3Delay         = 720    ;in milliseconds
    Blast3ScorchDelay   = 260     ;in milliseconds
    Blast3InnerRadius   = 120.0   ;objects inside this get the full damage
    Blast3OuterRadius   = 120.0   ;objects inside this get some of the full damage
    Blast3MaxDamage     = 1000.0     ;damage within inner radius of blast
    Blast3MinDamage     = 1000.0     ;always do at least this much damage to objects
    Blast3ToppleSpeed   = 0.42    ;higher #'s topple faster
    Blast3PushForce     = 6.0     ;higher #'s push more
 
    Blast4Enabled       = Yes
    Blast4Delay         = 850    ;in milliseconds
    Blast4ScorchDelay   = 340     ;in milliseconds
    Blast4InnerRadius   = 150.0   ;objects inside this get the full damage
    Blast4OuterRadius   = 150.0   ;objects inside this get some of the full damage
    Blast4MaxDamage     = 1000.0     ;damage within inner radius of blast
    Blast4MinDamage     = 1000.0     ;always do at least this much damage to objects
    Blast4ToppleSpeed   = 0.40    ;higher #'s topple faster
    Blast4PushForce     = 6.0     ;higher #'s push more
 
    Blast5Enabled       = Yes
    Blast5Delay         = 1000    ;in milliseconds
    Blast5ScorchDelay   = 420     ;in milliseconds
    Blast5InnerRadius   = 180.0   ;objects inside this get the full damage
    Blast5OuterRadius   = 180.0   ;objects inside this get some of the full damage
    Blast5MaxDamage     = 1000.0     ;damage within inner radius of blast
    Blast5MinDamage     = 1000.0     ;always do at least this much damage to objects
    Blast5ToppleSpeed   = 0.38    ;higher #'s topple faster
    Blast5PushForce     = 6.0     ;higher #'s push more
     
    Blast6Enabled       = Yes
    Blast6Delay         = 1180    ;in milliseconds
    Blast6ScorchDelay   = 500     ;in milliseconds
    Blast6InnerRadius   = 210.0    ;objects inside this get the full damage
    Blast6OuterRadius   = 270.0   ;objects inside this get some of the full damage
    Blast6MaxDamage     = 1000.0  ;damage within inner radius of blast
    Blast6MinDamage     = 300.0   ;always do at least this much damage to objects
    Blast6ToppleSpeed   = 0.35    ;higher #'s topple faster
    Blast6PushForce     = 4.0     ;higher #'s push more
 
    Blast7Enabled       = Yes
    Blast7Delay         = 999999  ;in milliseconds, don't do the damage wave
    Blast7ScorchDelay   = 620     ;in milliseconds
    Blast7OuterRadius   = 210.0   ;objects inside this get some of the full damage
 
    Blast8Enabled       = Yes
    Blast8Delay         = 999999  ;in milliseconds, don't do the damage wave    
    Blast8ScorchDelay   = 700     ;in milliseconds
    Blast8OuterRadius   = 210.0   ;objects inside this get some of the full damage
 
    Blast9Enabled       = Yes
    Blast9Delay         = 999999  ;in milliseconds, don't do the damage wave    
    Blast9ScorchDelay   = 800     ;in milliseconds
    Blast9OuterRadius   = 210.0   ;objects inside this get some of the full damage
     
    OCL            = MIDPOINT   OCL_NukeRadiationField
  End
 End
End
Annihilationzh
12 years ago

I fix the Annihilationzh code for Migs with Nuclear Missiles, only for make an example, now you can use it in a map.ini file for multiplayer game, with or without AI (testing in Generals Vanilla and Zero Hour).


If this is true, then I commend you. But I'm skeptical because I've never seen anyone else achieve it before. It's also common knowledge that STR files do not work online properly, so why should Map.inis? The only other way I know around the online Map.ini issues is to have everyone manually download the map.

Did you switch the RemoveModule with the ReplaceModule for any particular reason?

My main skepticism here is that you claim it worked online, but you didn't modify the NeutronMissileSlowDeathBehavior in my code like you did with the rest. This makes your claim nonsensical. Either my code works or it doesn't.

testing in Generals Vanilla


It's relatively common knowledge that Map.inis work in Vanilla online.
If you need help, post in the forum. You'll get help a lot faster than if you send me a PM.

I reject all buddy requests. I don't think 'buddy' needs to be made official. It's not like you're marrying me.
Lithium
12 years ago


My main skepticism here is that you claim it worked online, but you didn't modify the NeutronMissileSlowDeathBehavior in my code like you did with the rest. This makes your claim nonsensical. Either my code works or it doesn't.

Originally Posted by: Annihilationzh 



I take your code from this post Map ini code snippets , and I leave the same parameters. I made a fast test and you can change the parameters, like the rest of the code.


Did you switch the RemoveModule with the ReplaceModule for any particular reason?

Originally Posted by: Annihilationzh 



What I know, in map.ini files the order it's important. It's better first of all remove all the modules what you don't need, because later they can cause problems.


The only other way I know around the online Map.ini issues is to have everyone manually download the map.

Originally Posted by: Annihilationzh 



Map.ini files will be transfered with the map, like .str, and preload before the game start, so every player don't need to manually download the map (this is why I prefeer edit map.ini, because I always make skirmish maps for multiplayer).
Annihilationzh
12 years ago

I take your code from this post Map ini code snippets , and I leave the same parameters. I made a fast test and you can change the parameters, like the rest of the code.

Originally Posted by: Lithium 


You removed the error I was commenting on after I commented, and yet you didn't address it when responding to me? You claimed it was working even though it had a mistake in it!

What I know, in map.ini files the order it's important. It's better first of all remove all the modules what you don't need, because later they can cause problems.


For example?
If you need help, post in the forum. You'll get help a lot faster than if you send me a PM.

I reject all buddy requests. I don't think 'buddy' needs to be made official. It's not like you're marrying me.
Lithium
12 years ago

You removed the error I was commenting on after I commented, and yet you didn't address it when responding to me? You claimed it was working even though it had a mistake in it!

Originally Posted by: Annihilationzh 



I made a mistake before, I upload a wrong file. Later I edit and post the right code, at that time you were commenting. Sorry for the post edits.


For example?

Originally Posted by: Annihilationzh 



¿?

I mean modules order inside the map.ini, It's not the same put it in the correct order that in a bad order, then the game crashes (but I think it is not exclusive for map.ini files, normal modding need a certain order).
Annihilationzh
12 years ago

I made a mistake before, I upload a wrong file. Later I edit and post the right code, at that time you were commenting. Sorry for the post edits.


Ok then. Get verification from another member that it works on Zero Hour online and I'll stop being skeptical.

I mean modules order inside the map.ini, It's not the same put it in the correct order that in a bad order, then the game crashes (but I think it is not exclusive for map.ini files, normal modding need a certain order).


I was looking for an example. There are things like locomotors must be after the AIUpdate, but other than that you can be quite liberal.
If you need help, post in the forum. You'll get help a lot faster than if you send me a PM.

I reject all buddy requests. I don't think 'buddy' needs to be made official. It's not like you're marrying me.
VTULCobra
12 years ago
Ok, Annihilationzh is right, it does not work in Zero Hour multi-human games. It just doesn't.
Rank up!
jman
  • jman
  • 50.25% (Neutral)
  • Private
12 years ago
Well I can confirm that the map.ini file listed below works in Zero hour human multiplayer
BUT only when all the players have the same map.ini file and the corresponding map BEFORE they launch ZEro hour game.
So if you transfers the map with map.ini file to one or more players it will crash.All must restart the game after they got the map with map.ini file in order for them to get it work.



;-----------------------------------------------------------------------------
;---------------------------Oil Direcs --------------------------------------
;-----------------------------------------------------------------------------
Object TechOilDerrick
 ReplaceModule ModuleTag_04
  Behavior = AutoDepositUpdate ModuleTag_04_Override
    DepositTiming       = 1500 
    DepositAmount       = 25
    InitialCaptureBonus = 500
    UpgradedBoost       = UpgradeType:Upgrade_AmericaSupplyLines  Boost:5
  End
 End
End

;Time is in miliseconds
;original DepositTiming = 12000 , DepositAmount = 200, InitialCaptureBonus=1000
;modified DepositTiming = 50 , DepositAmount = 1 => 50x1 > 20$/sec > 1200$/min
;modified DepositTiming = 1500 , DepositAmount = 25 => 1500x25 50$/3sec > 1000$/minute
;-----------------------------------------------------------------------------
;---------------------------End of Oil Direcs --------------------------------
;-----------------------------------------------------------------------------

Also srt files do not seems to get transfered to other players.That's why I keep seeing maps with "missing" announcments and ppl use embedded briefings.It is better to have the annoying "missing" but still have the briefing than not have any briefings.