You must be logged in to post messages.
Please login or register

Scenario Design and Modding
Moderated by Suppiluliuma, PhatFish, Fisk, EpiC_Anonymous, Epd999

Hop to:    
Welcome! You are not logged in. Please Login or Register.139 replies, Sticky
Age of Empires Heaven » Forums » Scenario Design and Modding » RockNRoR : mod to improve AI and add various game enhancing features
Topic Subject:RockNRoR : mod to improve AI and add various game enhancing features
« Previous Page  1 ··· 4 5 6  Next Page »
posted 03-16-15 02:44 PM ET (US)         
Warning: this project is now named RockNRor.
The file is provided in RockNRor ZIP file.
See also RockNRor website for screenshots, etc.

This mod will contain
- Some already existing fixes
- All new fixes that I find
- All new features I can develop for RoR.

Main ideas are:
- Improve AI to make it more challenging
- Add features like get map seed, add new conversion resistances (see the details below)
- Allow more and more possible configuration. Almost all features can be configured to best suit YOUR expectations.
- Potential improvements/features are almost illimited ! Other major enhancements may come in the future.

As it is part of ROR_API system, it only needs minimal changes in original game files. Moreover, these changes are compatible with all other mods that are written for ROR_API. For the first time, a common part of the code might be overloaded by 2 mods at once !

- Windows XP, 7 or later (compatible with linux using wine+winetricks)
- Windows 10 : please see FAQ paragraph
- Microsoft Visual C++ redistributable libraries 2013
- Rise of Rome expansion !

- Run RockNRoradmin.exe (make sure to use latest version) and use the dedicated menu entry.

Please provide feedback. This is still under heavy development, I hope it is bug-free.

Scenario Editor : F1 to switch to "select unit" mode
Scenario Editor : F2 to edit selected unit
Scenario Editor : F3 to open RockNRor menu (edit terrain, triggers, get PER/AI files, etc)
Scenario Editor : F10 to open standard menu

Does it work for 1.0b version or vanilla AoE ?
Yes... But features will be very limited !

How do I set up my own configuration for conversion resistance, custom civilizations or any other stuff ?
Just edit RockNRor.xml / RockNRor_civs.xml...

Can I make sure all RockNRor features work correctly ?
- Open RockNRor.log and check for error messages. It will tell you if a feature could ne be enabled (if CustomizeAOE changes are missing)
- Press F1 in ROR main menu (first screen). If an options screen appears, then RockNRor is working. If AOE help opens, then RockNRor is not working.
- Select a unit and press F2 in game screen. If a popup shows up, then RockNRor is working.

The game is not working well in Windows 10 system
If the game does not run, does not run in full screen, or if RockNRor is not active (see the previous paragraph to see how you can check this), then follow the indications as follows:
copy-paste manually the links, there is a bug with the forums if you click on them
- Install the standard Microsoft Visual C++ redistributable libraries 2013
- If you still have issues, install the updated libraries
- If you still have issues, install the all-in-one libraries found by Phatfish
- If you still have issues, right click on your shortcut or game 'exe' file, open the properties/compatibility, and select the Windows 7 compatibility mode.

- Handle up to 255 civilizations in ROR instead of 16 (see RockNRor_civs.xml).
- Improved game speed change with +/- buttons. Choose the speed change factor (default 1.25) in XML config or in-game RockNRor menu.
- Dramatically improve defence AI: train relevant units according to attacking units and accoding to player's available units.
- Improve unit targeting so that AI units do not hesitate between several targets (including 2-priest trick).
- Ability to customize number of relics/ruins in random games/deathmatch.
- Replace SNScalingFrequency unit from minutes to seconds (low values will automatically be fixed to prevent issues).
- Improved tactical AI updates:
-- Disable irrelevant limited-retrain units (like clubmen) when starting at iron age or post-iron.
-- Unblock "stuck buildings". It is necessary to wait a moment before doing this or the player will lose all his resources trying to build something that is "instant-killed" by the enemy.
-- Add some useful (available) researches if the player is rich, well developed (for example, wheel when it's not included in player's strategy).
-- TO DO - Disable useless building (governement center) if it is no longer useful (all underlying techs researched, iron age already researched).
-- TO DO - Improve farms management (lower their priority in AI list).
- Set a maximum number of farms in deathmatch games. AI builds too much farms in deathmatch (SNMaxFarms).
- Automatically computes AI's "dislike" values against each player. A player with all relics/ruins/wonder will have more chances to be taken as target.
- Change conversion resistances, like 1.25 for war elephants instead of 1 (customizable in config file).
- Faster town building at game startup in deathmatch using appropriate SN numbers (SNRequiredFirstBuilding, SNInitialExplorationRequired).
- Improve some city plan calculations to prevent villagers from being stuck and improve access to TC (+granary/SP) for farmers/gatherers...
-- Always protect Town center (and granry/storage pit) immediate neighborhood from being built (may occur when using custom city plan configurations)
-- Improve granary location choice (closer from most of the target bushes)
-- Avoid construction of many consecutive buildings in a row that leave no way for living units
- Correctly sets AI control at game startup when using the "ManageAI" feature (allows AI to control your "old" player when changing with gaia cheat code).
- Triggers system
- Enhanced scenario editor
- etc...

- Fix timer bug on fast computers (game freezes in low game speeds).
- Fix stuck AI bug #1: missing unitId in computer players strategy for unfinished buildings.
- Fix stuck AI bug #2: strategy when an unfinished building is destroyed (computer player will no longer get stuck).
- Fix stuck AI bug #3: strategy when a building that is currently training a unit is destroyed (computer player will no longer get stuck).
- Fix stuck AI bug #4: when entering "panic mode", too much irrelevant units are added on top of strategy and AI gets stuck.
- Fix bug with reveal map option in game settings (does not applies correctly to all players). Bug can be observed with FULL_computerPlayer1 or when switching players with gaia cheat code.
- Fix SNRequiredFirstBuilding handling (was not working correctly).

- A new button in game menu opens RockNRor options UI.
- Automatically show "F11" information at game startup.
- In scenario editor, F10 opens the menu.
- Display a chat message at game startup to say the plugin is active.

Chat commands:
- Type "t" or "time" in chat box to display system time (as a chat message)
- Type "seed" to get map seed (as a chat message)
- Type "ai" or "AI" in chat box to fix AI control flags after using a "gaia*" cheat code.
- Type "allai" or "allAI" in chat box enable computer-control for ALL players
- Type "hi" to get Hello world, "about" for information about RockNRor.
- Type "timer stats" to get info related to game timer bug.

- You may need to run your editor as admin to edit XML files according to the location you installed the game.
- RockNRor produces a log file named "RockNRor.log" in RockNRor folder in Age of Empires installation directory.
- If the game process does not have necessary rights, the log file might be located in C:\Users\{username}\AppData\Local\VirtualStore\Program Files (x86)\Jeux\Age of Empires
- Make sure the "ROR_API.conf" file contains the lines 'wndmode.dll' and 'RockNRor.dll' (without the quotes and without extra characters on the same line)
- If the game won't run, try to run it in Windows 7 compatibility mode

[This message has been edited by chab (edited 07-05-2020 @ 10:36 AM).]

Mr. Beta
posted 07-10-20 12:44 PM ET (US)     126 / 139       
It installs fine according to the main window (it copies all the files, but I don't get the RockNRor has succesfully installed message). yet I always get that same error message as in my previous reply, and it does not always apply the necessary .exe changes to the 1.0c ror exe (it sometimes does though, but not correctly it seems?).

I'll have a look this weekend to see if I can get it running again.
Mr. Beta
posted 07-13-20 07:05 AM ET (US)     127 / 139       
It works now, downloaded the latest version. Yup, you are correct, that custom .drs file fails to write (I overlooked that in the installation window I guess!) which causes the installation issue. I removed the file and presto, it installs like a charm! Probably something to take into consideration for the next release, or at least put a warning that the RockNRor.drs file might cause install failures.
If you open file properties on this file :
- (in general) Read only flag should not be set
- (in details) File version should be
It is set exactly like this, file is dated 4th of July 2020.

Edit: I still get crashes whenever trying to playtest a scenario from the editor. Other than that everything works fine. Version is RoR 1.0c.

Just a side note, I always use a copy of my AoE installation for RockNRor, not the default installation set in registry e.g. instead of /microsoft games/age of empires/ directory I use /microsoft games/age of empires_new/ directory for RockNror. Don't think it matters at all but I thought you should know.

[This message has been edited by PhatFish (edited 07-13-2020 @ 07:13 AM).]

posted 07-14-20 07:59 AM ET (US)     128 / 139       
Thanks for the news

Yeah I confirm that the installation path from windows registry keys does not matter : the only place it's used is when you press CTRL-R in RockNRorAdmin ("select AOE/ROR file from registry")

I found what was wrong - and causing game crash in scenario editor.

I uploaded a new version
- Fixed scenario editor crash
- Fixed windows shortcut name (no longer named "test" !!!)
- Readonly flag on existing files (RockNRor.drs, rocknror.dll, etc) should no longer cause installation failure

I hope everything's fine now.

I see my "single" DRS file for 1920*1200 resolution has been validated and it now available in the granary.

If you put it in data/ folder (and make sure there is no file names data2/itf_custom.drs), you should be able to use the game in 1920*1200, using only 1 DRS file, and without having to run RockNRorAdmin.
The game should autodetect the game resolution (the first time you run ROR, make sure to select the highest game resolution in game options).

You can also select game resolution by pressing F1 in fullscreen menus
Mr. Beta
posted 08-06-20 07:26 AM ET (US)     129 / 139       
Works fine now!
posted 08-20-20 08:48 AM ET (US)     130 / 139       
What kind of ROR is considered 1.0a by RockNRor?
I tried multiple ROR CD images, but they are reported as ROR1.0b, ROR1.0c or unrecognized. I never heard of these version before.

For example, one of my AOE gold is reported as ROR1.0b(?).
And after I ran the hosted AOE1.0c/ROR1.0a patch, it is reported as ROR1.0c(???).

I tried to install RockNRor on the "ROR1.0c".
There is no warning during installation, and it appears to work.
(For example, there is some apparent difference with the timer tweak enabled.)
However, it is sort of buggy. Two most obviously defects:
1. Unstable: very likely crash on restart and more random crash than stock ROR.
2. Random prompt of RockNRor log UI (ctrl+F1) though I didn't touch anything.

Under resolution 1920x1200, the minimap is shown at mid-bottom instead of stock right-bottom.
Is it bug or feature?
posted 08-22-20 10:53 AM ET (US)     131 / 139       
the minimap is shown at mid-bottom instead of stock right-bottom
Yeah it's intended because on wide resolution the minimap would be too far from the center of the screen, which is bad user experience.

Never heard of the issues you're having.
Maybe you have some other mod which is interfering. RockNRor shouldn't be unstable, on the contrary it prevents many crashes to desktop.
If the log window opens automatically, then it must be reporting some problem. What does it say ?

As for the version numbers, yeah AOE/ROR versions are confusing.
AOE and ROR were delivered together in each version... But their (EXE files) version numbers don't match.
EXE numbers are
release .....AOE.EXE version..... ROR.EXE version
AOE 1.0a .....1.0a ............... -
AOE 1.0b .....1.0b ............... 1.0 (AOE/ROR gold is based on this release)
AOE 1.0c .....1.0c ............... 1.0a
For historical reasons (I'm not saying that was the best choice) in ROCKNROR project version number is always the "release" version.
The idea was to remove the confusion that AOE1.0a has nothing to do with ROR1.0a (ROR1.0a.exe being bound to AOE1.0c.exe...)
posted 08-24-20 03:26 AM ET (US)     132 / 139       
Thanks for the explanation on AOE version numbers.
It would be great if RockNRor is open source.
If the log window opens automatically, then it must be reporting some problem. What does it say ?
Something like this, id=10000 could be 20000/40000 ...
Error adding unit extension for id=10000

With "steroids", it appears after a few minutes.
And after another minute or so, AOE crashes.

RockNRor.log doesn't contain additional debug logs even with collectRORDebugLogs=2.
Actually, there is no log after game finished launch.

improveAI=1 is causing the crash.
It appears that it is correlated to my empires.dat.
However, my empires.dat is OK with stock executable.

generateAutomaticStrategy=1 also instantly crash.
Of course there is non-circular deps in my tech-tree.

I didn't customize by RockNRorAdmin (except for resolution). RockNRor.log is posted at bottom of the post.

Besides, below issues appears with unmodified .dat and default .xml.
1. RockNRor.log doesn't contain additional debug logs with collectRORDebugLogs=2.
Actually, there is no log after game process started.
1. Neither "ai" nor "allai" can fix (previous) human player's AI after "set control=0".
player control:
1. "set control=0" works, but "gaia" has no effect.
2. "set control=1-8" has no effect.
1. Installing RockNRor again to same location does not preserve previous .xml


Running checks on active features in game executable.
This detects if some features from this version of RockNRor will not work because you need to enable them with "RockNRorAdmin".
This sequence will not be checked: ROR_API_VarDataUpdate
...ROR_API_DLL_initialization... Installed !
...ROR_API_CDCheck_stub... Installed !
...ROR_API_DLL_API_methods... Installed !
[WARNING] Feature is not installed: API_ReadTextFromChat
Force installation of API_ReadTextFromChat
[WARNING] Feature is not installed: ComputeConversionResistance
Force installation of ComputeConversionResistance
[WARNING] Feature is not installed: FixUnitIdForInProgressBuilding
Force installation of FixUnitIdForInProgressBuilding
[WARNING] Feature is not installed: FixResetStratElemForUnitId
Force installation of FixResetStratElemForUnitId
[WARNING] Feature is not installed: API_onGameRestart
Force installation of API_onGameRestart
[WARNING] Feature is not installed: API_onGameStart
Force installation of API_onGameStart
[WARNING] Feature is not installed: API_onGameStart_Load
Force installation of API_onGameStart_Load
[WARNING] Feature is not installed: BeforeCreateGame_savedGame
Force installation of BeforeCreateGame_savedGame
[WARNING] Feature is not installed: BeforeCreateGame_notSavedGame
Force installation of BeforeCreateGame_notSavedGame
[WARNING] Feature is not installed: OnLoadScenarioInfoTexts
Force installation of OnLoadScenarioInfoTexts
[WARNING] Feature is not installed: ManagePanicMode
Force installation of ManagePanicMode
[WARNING] Feature is not installed: TacAIOnUnitAttackedEvent
Force installation of TacAIOnUnitAttackedEvent
[WARNING] Feature is not installed: FixAI_AfterWonder
Force installation of FixAI_AfterWonder
[WARNING] Feature is not installed: AuditDoStrategyElementBuilding
Force installation of AuditDoStrategyElementBuilding
[WARNING] Feature is not installed: OverloadStrategySetInProgress
Force installation of OverloadStrategySetInProgress
[WARNING] Feature is not installed: OverloadStrategyResetInProgress
Force installation of OverloadStrategyResetInProgress
[WARNING] Feature is not installed: OverloadUnitDestructorStrategyAndInfAI
Force installation of OverloadUnitDestructorStrategyAndInfAI
[WARNING] Feature is not installed: GameScreenAndScenarioEditorKeyPress
Force installation of GameScreenAndScenarioEditorKeyPress
[WARNING] Feature is not installed: ManageTacAIUpdate
Force installation of ManageTacAIUpdate
[WARNING] Feature is not installed: ManageDefeatedAIPlayerTacAIUpdate
Force installation of ManageDefeatedAIPlayerTacAIUpdate
[WARNING] Feature is not installed: ManageUnitTargetChange_military
Force installation of ManageUnitTargetChange_military
[WARNING] Feature is not installed: ManageUnitTargetChange_convert
Force installation of ManageUnitTargetChange_convert
[WARNING] Feature is not installed: EnemyTowerInTown_militaryUnits
Force installation of EnemyTowerInTown_militaryUnits
[WARNING] Feature is not installed: EnemyTowerInTown_villager
Force installation of EnemyTowerInTown_villager
[WARNING] Feature is not installed: ReactionWhenAttacked_currentActionCheck
Force installation of ReactionWhenAttacked_currentActionCheck
[WARNING] Feature is not installed: FixStuckPriestWithUnfinishedBuildings
Force installation of FixStuckPriestWithUnfinishedBuildings
[WARNING] Feature is not installed: AddRockNRorInGameMenu
Force installation of AddRockNRorInGameMenu
[WARNING] Feature is not installed: ManageRockNRorInGameMenu
Force installation of ManageRockNRorInGameMenu
[WARNING] Feature is not installed: ManageAllOnButtonClickEvents
Force installation of ManageAllOnButtonClickEvents
[WARNING] Feature is not installed: ManageGameSpeedChange
Force installation of ManageGameSpeedChange
[WARNING] Feature is not installed: ManageNumberOfRelics
Force installation of ManageNumberOfRelics
[WARNING] Feature is not installed: ManageNumberOfRuins
Force installation of ManageNumberOfRuins
[WARNING] Feature is not installed: civNumberInGameSelection
Force installation of civNumberInGameSelection
[WARNING] Feature is not installed: GetCivNameDLLStringIdOffset
Force installation of GetCivNameDLLStringIdOffset
[WARNING] Feature is not installed: GetCivNameDLLStringIdOffset2
Force installation of GetCivNameDLLStringIdOffset2
[WARNING] Feature is not installed: ChooseAIFileForCiv
Force installation of ChooseAIFileForCiv
[WARNING] Feature is not installed: ManageCivComboInGameSettings
Force installation of ManageCivComboInGameSettings
[WARNING] Feature is not installed: ManageCivComboInEditor
Force installation of ManageCivComboInEditor
[WARNING] Feature is not installed: InGameGetCustomCivName
Force installation of InGameGetCustomCivName
[WARNING] Feature is not installed: ManageCityMapLikeCalculation1
Force installation of ManageCityMapLikeCalculation1
[WARNING] Feature is not installed: ManageCityMapLikeCalculation2
Force installation of ManageCityMapLikeCalculation2
[WARNING] Feature is not installed: ManageCityPlanBushLikeValue
Force installation of ManageCityPlanBushLikeValue
[WARNING] Feature is not installed: ManageCityPlanFarmPlacement
Force installation of ManageCityPlanFarmPlacement
[WARNING] Feature is not installed: OnLivingUnitCreationEntryPoint
Force installation of OnLivingUnitCreationEntryPoint
[WARNING] Feature is not installed: OnGameRightClickUpEntryPoint
Force installation of OnGameRightClickUpEntryPoint
[WARNING] Feature is not installed: PlayerCreationChecks_comp
Force installation of PlayerCreationChecks_comp
[WARNING] Feature is not installed: PlayerCreationChecks_human
Force installation of PlayerCreationChecks_human
[WARNING] Feature is not installed: RandomCivPickingInSettings
Force installation of RandomCivPickingInSettings
[WARNING] Feature is not installed: FixAutoBuildWarShips
Force installation of FixAutoBuildWarShips
[WARNING] Feature is not installed: FixAutoBuildHouses
Force installation of FixAutoBuildHouses
[WARNING] Feature is not installed: FixAutoBuildHousesMaxPop127Limitation
Force installation of FixAutoBuildHousesMaxPop127Limitation
[WARNING] Feature is not installed: AfterAddElementToStrategyEntryPoint
Force installation of AfterAddElementToStrategyEntryPoint
[WARNING] Feature is not installed: AfterAddDynamicStratElemsEntryPoint
Force installation of AfterAddDynamicStratElemsEntryPoint
[WARNING] Feature is not installed: FixPlayerBuildingsArray_remove
Force installation of FixPlayerBuildingsArray_remove
[WARNING] Feature is not installed: FixPlayerBuildingsArray_add
Force installation of FixPlayerBuildingsArray_add
[WARNING] Feature is not installed: PlayerCreateUnitEntryPoint
Force installation of PlayerCreateUnitEntryPoint
[WARNING] Feature is not installed: GameSettingsNotifyEventEntryPoint
Force installation of GameSettingsNotifyEventEntryPoint
[WARNING] Feature is not installed: GameInitResearchesEntryPoint
Force installation of GameInitResearchesEntryPoint
[WARNING] Feature is not installed: conversionSuccessEntryPoint1
Force installation of conversionSuccessEntryPoint1
[WARNING] Feature is not installed: FixUnitSelectionShortcutSign
Force installation of FixUnitSelectionShortcutSign
[WARNING] Feature is not installed: WMCloseMessageEntryPoint
Force installation of WMCloseMessageEntryPoint
[WARNING] Feature is not installed: TextBoxesOnKeyPressEntryPoint
Force installation of TextBoxesOnKeyPressEntryPoint
[WARNING] Feature is not installed: OnBeforeSaveGameEntryPoint
Force installation of OnBeforeSaveGameEntryPoint
[WARNING] Feature is not installed: MapGenerationElevationAmountCalculation
Force installation of MapGenerationElevationAmountCalculation
[WARNING] Feature is not installed: FixMapGenerationElevationComputationMethod
Force installation of FixMapGenerationElevationComputationMethod
[WARNING] Feature is not installed: ScEditorUIAfterCreate
Force installation of ScEditorUIAfterCreate
[WARNING] Feature is not installed: ScEditorUIChangeTerrain
Force installation of ScEditorUIChangeTerrain
[WARNING] Feature is not installed: CheckPopCostWithLogistics
Force installation of CheckPopCostWithLogistics
[WARNING] Feature is not installed: LoadEmpiresDAT_entryPoint
Force installation of LoadEmpiresDAT_entryPoint
[WARNING] Feature is not installed: EditorUnitPlacementChecks
Force installation of EditorUnitPlacementChecks
[WARNING] Feature is not installed: HumanSpecific_onUnitSeen
Force installation of HumanSpecific_onUnitSeen
[WARNING] Feature is not installed: CustomUnitSelection1
Force installation of CustomUnitSelection1
[WARNING] Feature is not installed: CustomUnitSelection2
Force installation of CustomUnitSelection2
[INFO] Feature is not installed: ROR_writeDebugLog
[INFO] Feature is not installed: GetAOEDebugLogs
[WARNING] Feature is not installed: AffectGathererCheckPathFindingReturn
Force installation of AffectGathererCheckPathFindingReturn
[WARNING] Feature is not installed: ImprovedUnitShortcuts
Force installation of ImprovedUnitShortcuts
[WARNING] Feature is not installed: InitPlayersCivInEditor
Force installation of InitPlayersCivInEditor
[WARNING] Feature is not installed: FixRomanTileSetInEditorIcons
Force installation of FixRomanTileSetInEditorIcons
[WARNING] Feature is not installed: CustomF11PopInfo
Force installation of CustomF11PopInfo
[WARNING] Feature is not installed: FixSelectTargetFromAIList
Force installation of FixSelectTargetFromAIList
[WARNING] Feature is not installed: FixUnitIdBugStuckAttackNoTarget
Force installation of FixUnitIdBugStuckAttackNoTarget
[WARNING] Feature is not installed: setActivityTargetUnitIdBug
Force installation of setActivityTargetUnitIdBug
[WARNING] Feature is not installed: readActivityTargetUnitIdBug_200
Force installation of readActivityTargetUnitIdBug_200
[WARNING] Feature is not installed: readActivityTargetUnitIdBug_1F4
Force installation of readActivityTargetUnitIdBug_1F4
[WARNING] Feature is not installed: FixKillXUnknownPlayerCrash
Force installation of FixKillXUnknownPlayerCrash
[WARNING] Feature is not installed: ShowUnitCommandButtonsEnd
Force installation of ShowUnitCommandButtonsEnd
[WARNING] Feature is not installed: HandleGameCommandButtonsClick
Force installation of HandleGameCommandButtonsClick
[WARNING] Feature is not installed: GetButtonInternalIndexFromDatBtnId
Force installation of GetButtonInternalIndexFromDatBtnId
[WARNING] Feature is not installed: FixPlayerNoTechTree_applyTech
Force installation of FixPlayerNoTechTree_applyTech
[WARNING] Feature is not installed: EntryPoint_autoSearchTargetUnit1
Force installation of EntryPoint_autoSearchTargetUnit1
[WARNING] Feature is not installed: EntryPoint_autoSearchTargetUnit2
Force installation of EntryPoint_autoSearchTargetUnit2
[WARNING] Feature is not installed: FixScenarioBadInitialAgeApplication_removeBad
Force installation of FixScenarioBadInitialAgeApplication_removeBad
[WARNING] Feature is not installed: FixScenarioBadInitialAgeApplication_addFix
Force installation of FixScenarioBadInitialAgeApplication_addFix
[WARNING] Feature is not installed: CustomBuildingInfoDisplay
Force installation of CustomBuildingInfoDisplay
[WARNING] Feature is not installed: OverloadGetLocalizedText
Force installation of OverloadGetLocalizedText
[WARNING] Feature is not installed: SetEmpiresDatFileName
Force installation of SetEmpiresDatFileName
[WARNING] Feature is not installed: AllowMultiQueueing
Force installation of AllowMultiQueueing
[WARNING] Feature is not installed: FixComboboxFocusBug
Force installation of FixComboboxFocusBug
[WARNING] Feature is not installed: OnAttackableUnitKilled
Force installation of OnAttackableUnitKilled
[WARNING] Feature is not installed: OnHoverOnUnit
Force installation of OnHoverOnUnit
[WARNING] Feature is not installed: OnDisplayInGameDefaultCursorNoUnitUnderMouse
Force installation of OnDisplayInGameDefaultCursorNoUnitUnderMouse
[WARNING] Feature is not installed: AllowInGameCustomMouseActionTypesRightClick
Force installation of AllowInGameCustomMouseActionTypesRightClick
[WARNING] Feature is not installed: AfterActivityStop
Force installation of AfterActivityStop
[WARNING] Feature is not installed: GetMostDislikedPlayerId
Force installation of GetMostDislikedPlayerId
[WARNING] Feature is not installed: InfAIGroupFindMainTarget
Force installation of InfAIGroupFindMainTarget
[WARNING] Feature is not installed: OverloadTaskAIActiveSoldiersBeforeLoop
Force installation of OverloadTaskAIActiveSoldiersBeforeLoop
[WARNING] Feature is not installed: OverloadTaskAIActiveSoldiersForEachGroup
Force installation of OverloadTaskAIActiveSoldiersForEachGroup
[WARNING] Feature is not installed: gameMainUITilesetGraphicsInit
Force installation of gameMainUITilesetGraphicsInit
[WARNING] Feature is not installed: updateUnitInfoIconForBuilding
Force installation of updateUnitInfoIconForBuilding
[WARNING] Feature is not installed: editorSetUnitBuildingIcon
Force installation of editorSetUnitBuildingIcon
[WARNING] Feature is not installed: commandBarBldIconsForCustomTileset
Force installation of commandBarBldIconsForCustomTileset
[WARNING] Feature is not installed: beforeUnitCreateActivity
Force installation of beforeUnitCreateActivity
[WARNING] Feature is not installed: OverrideGameDebugString
Force installation of OverrideGameDebugString
[WARNING] Feature is not installed: EntryPointUnitCanTradeWith
Force installation of EntryPointUnitCanTradeWith
[WARNING] Feature is not installed: EntryPointDisplayBuildingInfoResource
Force installation of EntryPointDisplayBuildingInfoResource
[WARNING] Feature is not installed: UnitInfoRefreshForTradeGoods
Force installation of UnitInfoRefreshForTradeGoods
[WARNING] Feature is not installed: infAISearchTradeTargetElem
Force installation of infAISearchTradeTargetElem
[WARNING] Feature is not installed: TradeWithCustomOutResource
Force installation of TradeWithCustomOutResource
[WARNING] Feature is not installed: ShouldPreserveUnitResourceWhenKilledByClass
Force installation of ShouldPreserveUnitResourceWhenKilledByClass
[WARNING] Feature is not installed: IsTargetableResourceCallForInfAI
Force installation of IsTargetableResourceCallForInfAI
[WARNING] Feature is not installed: CallIsArtefactOrTargetableResourceOrCreatable1
Force installation of CallIsArtefactOrTargetableResourceOrCreatable1
[WARNING] Feature is not installed: CallIsArtefactOrTargetableResourceOrCreatable2
Force installation of CallIsArtefactOrTargetableResourceOrCreatable2
[WARNING] Feature is not installed: CallIsArtefactOrTargetableResourceOrCreatable3
Force installation of CallIsArtefactOrTargetableResourceOrCreatable3
[WARNING] Feature is not installed: ActivityNearbyUnitDetectionDelayUpdate
Force installation of ActivityNearbyUnitDetectionDelayUpdate
[WARNING] Feature is not installed: UnitUpdateVisibilityToOtherPlayers
Force installation of UnitUpdateVisibilityToOtherPlayers
[WARNING] Feature is not installed: RemoveHardcodedCivBonusInit
Force installation of RemoveHardcodedCivBonusInit
[WARNING] Feature is not installed: PalmyraHardcodedBonusTradingApply
Force installation of PalmyraHardcodedBonusTradingApply
[WARNING] Feature is not installed: PalmyraHardcodedBonusTradingDisplayDock
Force installation of PalmyraHardcodedBonusTradingDisplayDock
[WARNING] Feature is not installed: DialogPanelDestructor
Force installation of DialogPanelDestructor
[WARNING] Feature is not installed: TacAIUpdateOneTask
Force installation of TacAIUpdateOneTask
[WARNING] Feature is not installed: ActionBuildFarmHack
Force installation of ActionBuildFarmHack
[WARNING] Feature is not installed: OnAddInUnitMemoryList
Force installation of OnAddInUnitMemoryList
[WARNING] Feature is not installed: OverloadIsGamePaused
Force installation of OverloadIsGamePaused
[WARNING] Feature is not installed: ExecMoveCmdUsingFormation
Force installation of ExecMoveCmdUsingFormation
[WARNING] Feature is not installed: unitGroupTask2_forceOnConvert
Force installation of unitGroupTask2_forceOnConvert
[WARNING] Feature is not installed: playerAddOneUnitToSelection
Force installation of playerAddOneUnitToSelection
[WARNING] Feature is not installed: deleteFile
Force installation of deleteFile
[WARNING] Feature is not installed: InitGameSettingsAfterLoadDrs
Force installation of InitGameSettingsAfterLoadDrs
[WARNING] Feature is not installed: Optional_ManageGameTimerSkip
Force installation of Optional_ManageGameTimerSkip
[WARNING] Feature is not installed: Optional_GameTimerSkipStats
Force installation of Optional_GameTimerSkipStats

End of checks.

hideWelcomeMessage: 0
showAlertOnMissingFeature: 1
autoFixMissingFeatures: 1
empires.dat relative path to use: empires.dat
showRockNRorMenu: 1
showCustomPopulationInfo: 1
useImprovedGameSpeeds: 1
collectRORDebugLogs: 2
showRockNRorNotifications: 1
randomTechTreeForRMGames: 0
enableRPGModeInRandomGames: 0
enableRPGModeInScenario: 0
gameTimerSlowDownAutoFix: 1
gameTimerSlowDownFactor: 5
baseDelayForDetectUnit: 1000
fixInvisibleTree: 1
fixHumanPlayer_specific_seeUnit: 1
useImprovedButtonBar: 1
fixTechEffectAddSetArmorAttack: 1
allowMultiQueueing: 1
unitMovementFormations: standard
unitMovementFormations with CTRL key: ctrl_inverts
unit resource amounts: alligator=0 bush=0 elephant=0
...gazelle=0 gold=0 lion=0 stone=0 tree=0 forest=0 fish=0
noWalls: 0
noNeutralInitialDiplomacy: 1
[RM] initial food (default/small/med/large) : 200/200/500/1000
[RM] initial wood (default/small/med/large) : 200/200/500/1000
[RM] initial stone (default/small/med/large): 150/100/250/750
[RM] initial gold (default/small/med/large) : 0/0/0/0
[DM] initial resources (food/wood/stone/gold): 20000/20000/5000/10000
[RM] initialBonus for AI (food/wood/stone/gold): 200/200/150/250
[DM] initialBonus for AI (food/wood/stone/gold): 2000/2000/500/2000
[RM] Force PER number #161 to 4
[RM] Force PER number #186 to 0
[RM] Force PER number #187 to 0
[RM] Force PER number #215 to 0
[DM] Force PER number #161 to 0
[DM] Force PER number #167 to 1
[DM] Force PER number #186 to 0
[DM] Force PER number #187 to 0
[DM] Force PER number #215 to 0
[DM] Force PER number #220 to 3
useNumPadUnitShortcuts: 1
enableCallNearbyIdleMilitaryUnits: 1
distanceToCallNearbyIdleMilitaryUnits: 25
enableAutoMoveToLocation: 1
enableSpawnUnitsAutoTarget: 1
enableSpawnUnitAutoRepairTC: 1
unitSpawnShortcutReverseOrder: 1
unitSpawn shortcut 3: unit=125 onlyOneUnit=1 (Priest)
unitSpawn shortcut 5: unit=083 onlyOneUnit=1 (Man)
unitSpawn shortcut 6: unit=083 onlyOneUnit=1 (Man)
unitSpawn shortcut 7: unit=083 onlyOneUnit=1 (Man)
unitSpawn shortcut 8: unit=083 onlyOneUnit=1 (Man)
unitSpawn shortcut 9: unit=083 onlyOneUnit=1 (Man)
[RM] autoRebuildFarms: 1
[RM] autoRebuildFarms_maxFarms: 9
[RM] autoRebuildFarms_maxFood: 2000
[RM] autoRebuildFarms_minWood: 200
[DM] autoRebuildFarms: 1
[DM] autoRebuildFarms_maxFarms: 3
[DM] autoRebuildFarms_maxFood: 20000
[DM] autoRebuildFarms_minWood: 2000
[SCN] autoRebuildFarms: 0
[SCN] autoRebuildFarms_maxFarms: 4
[SCN] autoRebuildFarms_maxFood: 3000
[SCN] autoRebuildFarms_minWood: 200
autoGatherAfterBuildDeposit: 0
useEnhancedRulesForAutoAttack: 1
autoAttackPolicy vs towers/military/buildings/villagers/walls
- For Melee Units: 1/1/0/1/0
- For Ranged Units: 1/1/0/1/0
markUnitsWithCivBonus: 0
conversionResistance: do NOT apply Macedonian civ bonus (do not force resistance to 4 on all units).
conversionResistance_armorClass: 255
improveAILevel: 1
testCompareAI: 0
tacticalAIUpdateDelay: 30
minPopulationBeforeOptionalItems: 35
maxPanicUnitsCountToAddInStrategy: 8
panicModeDelay: 15
dislike computation interval: 10
dislike value - all artefacts/wonder: 6
dislike value - human player: 5
fixLogisticsNoHouseBug: 1
fixVillagerWorkRates: 0
cityPlanLikeValuesEnhancement: 1
cityPlanBerryBushWeightForGranary: 32
strategy/RM/forced researches: 28, 112, 107, 4
strategy/DM/forced researches: 28, 112, 107, 32, 110, 4
random map relics count: 5
random map ruins count: 5
use map gen. elevation customization: 1
map gen. elevation factor mapType=0 value=0.200000
map gen. elevation factor mapType=1 value=1.000000
map gen. elevation factor mapType=2 value=1.000000
map gen. elevation factor mapType=3 value=1.000000
map gen. elevation factor mapType=4 value=1.000000
map gen. elevation factor mapType=5 value=1.000000
map gen. elevation factor mapType=6 value=1.000000
map gen. elevation factor mapType=7 value=0.020000
map gen. elevation factor mapType=8 value=1.000000
map gen. elevation factor mapType=9 value=1.000000
disable dock in mostly-land maps: 0
showHiddenTerrainInEditor: 1
showHiddenUnitsInEditor: 1
useCustomMapDimensionsInEditor: 1
civilizations count: 16
Single player population limit: 200
End of configuration.

Virtual methods APIs have been written
The game will use itf_custom.drs instead of interfac.drs.

[This message has been edited by fllwr9141 (edited 08-25-2020 @ 05:38 AM).]

posted 08-25-20 11:47 AM ET (US)     133 / 139       
I'm glad to see you're trying to customize many things (including RockNRor features).
And it seems you're pushing the game to its limits
I'll try my best to help you.
It would be great if RockNRor is open source
At first I shared everything I had (so that all modding projects are compatible) and this was used against me and against my project (and some guys even got paid for this), so I have been a little reluctant afterwards...
Anyway at some point I think I will do it.
generateAutomaticStrategy=1 also instantly crash.
One possible reason could be the use of "optional" dependencies such as "[tech unit AA].deps = [tech A], [tech A1] min=1"
This really ain't good for static analysis and is strongly discouraged in RockNRor documentation :
However, it is strongly recommended not to use optional requirements, because it would make impossible to dynamically analyze technology trees and research dependencies (for example, strategy generation may not work anymore).
You will probably see warnings if you run a "dat check" in-game (it's a pseudo-cheat code to analyze tech dependencies).
You may also find details in RockNRor.doc in "check empires.dat quality" section.

Of course you can choose to do it, but it may not work well with RockNRor advanced features such as tech tree random generation (it's not supposed to crash but maybe the dependencies are really too complicated).
RockNRor.log doesn't contain additional debug logs with collectRORDebugLogs=2
Yeah in-game logs are more the CTRL-F1 stuff. And there is no "log levels" at this point.
1. "gaia" has no effect. "set control=0" works.
2. Installing RockNRor again to same location does not preserve previous .xml
1. I recommend using gaiaX (X being player id : gaia0, gaia1, gaia2...) to switch player control.
2. Yeah there wes no good choice for this : installation overwrites so that configuration updates are automatically applied - but user customization is overwritten. There would be complains too if I chose the other solution Sorry for that. You can keep a backup of your config so it's not lost.

Last but not least, the crash issue...
With "steroids", it appears after a few minutes.
Thanks for this information (+ the message), now I have more chances to find what's wrong. I see when it seems to happen, but I have no idea why for the moment.
Could you share your empires.dat, so maybe I could reproduce on my side and troubleshoot it ? I don't think I can really help without it.
Did you add new units ? Change important stuff (like Unit class, etc) ? Or maybe some units are different between civilizations (which does not happen in standard dat file) ?

What kind of game is crashing ? Random maps, specific scenarios with many units... ?

[This message has been edited by chab (edited 08-25-2020 @ 11:49 AM).]

posted 08-27-20 05:36 AM ET (US)     134 / 139       
At first I shared everything I had (so that all modding projects are compatible) and this was used against me and against my project (and some guys even got paid for this),
This is an insane story!

After some bisecting (thanks to AGE3 cross file copy/paste), I found that the crash is due to:
Units -> 112 - Flare -> Attribute -> Recyclable
By default Recyclable=1
Crash if: Recyclable=0 and xml.improveAI=1
No crash if: Recyclable=1 or xml.improveAI=0 or stock exe
(I don't remember why this is changed. May be by accident or my .dat origin is not 1.0c stock)
I recommend using gaiaX (X being player id : gaia0, gaia1, gaia2...) to switch player control.
gaiaX works.
But the initial human player cannot be controlled by AI. Neither "ai" nor "allai" can make activate AI. Is it expected or bug?

Other issues:
1. In-game debug log pop-up window sometimes cannot be closed.
With Issue.2's setup, pop-up is common. It should be >1/10 (1game/10game) chance to reproduce.
It might be a focus issue. Because when it happens, Alt+F4 also fails to work.

2. Error adding unit extension for id=10000/20000/40000...
What are these errors?
It can be reproduced by improveAI=1 and .dat below.
Game setup I used was player8, DM, medium, inland or highland, no fog/reveal map/steroids.
The error should occur in 3 mins and occur multiple times in 10 mins. (time is in game time = F11 time)

.dat and .xml is here:
(.xml does not really matter)
Techs and effects are restored to stock. This .dat only contains modified stock units.

3. There is some <5% random crash on F10-"restart" and end-game achievement window-"close".
But I do not have reliable ways to reproduce them.
This really ain't good for static analysis and is strongly discouraged in RockNRor documentation :
You will probably see warnings if you run a "dat check" in-game (it's a pseudo-cheat code to analyze tech dependencies).
You may also find details in RockNRor.doc in "check empires.dat quality" section.
I saw it but I think it doesn't matter or could be made so.
Graph processing is not that complex and tech-tree graph is unlikely to be a large graph.

I experimented it a bit.
With single small change generateAutomaticStrategy=1 works.
With more changes it either crashes or goes weird.
Besides, iron age etc. seems to be hardcoded.

Suggestions on tech-tree processing:
0. Remove disabled nodes first, and then remove unreachable nodes.
1. Treat optional requirements as mandatory.
2. When there are two or more paths exists, pick any of them.
(If target effect is contained by two or more techs, pick any of them)
3. Find age-tech: If an effect contains [Set][resource.age], it is age-effect.
Traverse back through edges, the first researchable techs in each path are age-techs. Pick any of them.
posted 08-27-20 07:02 PM ET (US)     135 / 139       
Right. Good job, Chab, with your work. RockNROR is impressive in general. The best thing for me was the windowed mode because one of my biggest problems with the game was the intermittent freezing of the screen and gameplay. Windowed mode was the only thing that fixed it. Even on UPATCH ROR, it's the windowed mode that fixes the problem. And ROR was the worst for freeziness, IIRC.
posted 08-29-20 06:50 AM ET (US)     136 / 139       
Thanks rakovsky, it's good to know it's working fine and solves your issue.


I reproduced the issue with your empires.dat, and the debugging session clearly confirmed your observation.

Units -> 112 - Flare -> Attribute -> Recyclable has been changed from 1 to 0 in your empires.dat.

This technical flag has huge impacts on how the game handles units (I'm speaking about ROR, not RockNRor).
Then of course RockNRor is affected too and there's confusion because flares are no longer detected as "temporary units".

I confirm the messages you get are directly caused by that flag, no doubt on this.
Just restoring its correct value (1) fixes the issue, and the "steroids DM" game runs like a charm. (so it seems it's the only unit that needs that kind of fix)

I wouldn't guarantee this setting (flare with recyclable=0) is harmless to ROR itself (without RockNRor). I'm not sure but it might cause bad memory access, so random behavior and possible crashes.
I don't have time for a deep analyzis but I certainly wouldn't recommend this setting, even for people not using RockNRor.

With that fix, you don't get any error popup. So you won't have trouble closing them either (this issue could be due to the fact many popup opened, or even because of side effect of bad memory access in ROR. UI stuff is very sensitive...)

In a more general manner, if RockNRor dares to interrupt your game with messages, then something serious is going wrong and you may expect the worst. Believe me, I have no intention spamming people with popups in the middle of a game
Most people should never see that popup unless they open it manually with the shortcut key.

PS : the horse archer range change is a bit extreme

PS2 : I saw a warning because lazor tower (236) is type=70(combattant) and class=3(building), which is not really an expected configuration. Did you change the class intentionally ? It may be safer to use type80+class3 (like towers) or type70+class0 (like original lazor tower).

PS3 : iron age (and other ages) IS hardcoded everywhere in AOE/ROR. It's one of the bases of the game and can't really be removed.
I tried to avoid any hardcoded value in RockNRor, I only used a few ones that are really important and commonly used (hardcoded) in orignal game EXE.

[This message has been edited by chab (edited 08-29-2020 @ 07:11 AM).]

posted 08-29-20 12:45 PM ET (US)     137 / 139       
With that fix, you don't get any error popup. So you won't have trouble closing them either (this issue could be due to the fact many popup opened, or even because of side effect of bad memory access in ROR. UI stuff is very sensitive...)
Unfortunately, I am still getting (lots of) pop-ups with Recyclable=1.
I thought there are multiple sources of the pop-ups, as I failed to bisect it trivially.
PS : the horse archer range change is a bit extreme
I was testing various stuffs.
IMO Horse archer with range 5(2+3) seems better than 10. The blind hit-and-run AI just pulls enemies to his base and catapults too quickly.
PS2 : I saw a warning because lazor tower (236) is type=70(combattant) and class=3(building), which is not really an expected configuration. Did you change the class intentionally ? It may be safer to use type80+class3 (like towers) or type70+class0 (like original lazor tower).
I didn't change it in this dat, maybe some part of this dat was not copied from ROR-1.0c.
Yes, it should be type80 else it will crash on built.
Tower AI seems hardcoded by unit id, and class3 does not make laster tower or new towers passive. Class0 make towers attacks normally, but then it may shoot during construction.
PS3: iron age (and other ages) IS hardcoded everywhere in AOE/ROR. It's one of the bases of the game and can't really be removed.
I tried to avoid any hardcoded value in RockNRor, I only used a few ones that are really important and commonly used (hardcoded) in orignal game EXE.
I thought that if generateAutomaticStrategy=1, RockNRor rules the tech research, and the original game should not matter any more.
For what I saw, as of age-related techs, generateAutomaticStrategy=1 is somewhat more sensitive to age-techs.
The stock exe and .ai will work as long as stock age-tech is still a researchable tech, but generateAutomaticStrategy=1 can fail due to deps, etc. (e.g. sometimes it upgrade to iron but can only build bronze units, or cannot build some units).

I found an issue with drs loading, unsure if it is RockNRor or DRS tools' problem.
A. If created by SLX Studio or Turtle Pack, the .drs does not work.
B. If modify RockNRor.drs or copy-and-modify RockNRor.drs by Turtle Pack, its works.

Both .drs files are here:
It contains 50730.slp (unit icons), which copied 59 (armed elephant) into 60 (scythe chariot).
With bad.drs, it has no effect. With good.drs, it changes the scythe chariot icon.
With either of them, in-game log shows that drs file is sucessfully loaded.

Bug with improvedButtonBar=1
With improvedButtonBar=0, all units can build with icon 1-20 (can choose two pages).
With improvedButtonBar=1, builders often becomes unable to use page 2+ (button of next page has no effect, and build with hotkey is OK). A typical case is that, the initial villagers can build with multi pages, while newly created villagers can only use first page.

[This message has been edited by fllwr9141 (edited 09-05-2020 @ 06:06 AM).]

posted 09-05-20 07:45 AM ET (US)     138 / 139       
sorry I'm not sure to understand what's wrong with RockNRor and DRS files.

both "good.drs" and "bad.drs" fail in turtle pack (it says SLP file is corrupt).

I confirm on my side that using "bad.drs" does not modify scythe unit icon, whereas using "good.drs" works (scythe unit icon becomes armored elephant one).

Last test, I created a NEW drs file using RockNRorAdmin, I added your SLP file (50730) in my new "test.drs" file, then ran the game using test.drs, and it worked (scythe unit icon was armored elephant one).

Apparently you modified the SLP file with SLX studio (which would explain why turtle pack complains even for good.drs). Maybe that tool has minor bugs and creates files that are not 100% compatible with other tools ?

Anyway RockNRorAdmin seems to handle correctly DRS files (read and write), as it's consistent with in-game behavior, whereas turtle pack sometimes corrupts the DRS files (which is the reason why I spent time to re-develop a tool for saving DRS files)
I recommand using turtle pack for SLP files handling, but NOT for DRS files handling.

PS: there was an issue in RockNRorAdmin with DRS file saving, but now it's fixed and I presume you are using latest version - which includes the fix
posted 09-06-20 08:58 PM ET (US)     139 / 139       
Last test, I created a NEW drs file using RockNRorAdmin,...
Thanks for the answer and drs manager.
I was unaware that RockNRorAdmin has this feature, else I would not raise this question at all.
Apparently you modified the SLP file with SLX studio (which would explain why turtle pack complains even for good.drs). Maybe that tool has minor bugs and creates files that are not 100% compatible with other tools ?
The Turtle Pack hosted in AoEH download seems broken for me. I didn't try the AoKH version.
« Previous Page  1 ··· 4 5 6  Next Page »
You must be logged in to post messages.
Please login or register

Hop to:    

Age of Empires Heaven | HeavenGames