ARMIPS Module - Infinite COs 1.2

Discussion of hacking, editing and developments in Advance Wars games.
Remember, no Rom Requests
User avatar
MysteriousLad
Rank: Mysterious President
Location: In your computer.

Re: ARMIPS Module - Infinite COs 1.2

Post by MysteriousLad » Thu Feb 19, 2015 5:11 pm

The game crashed on the map selection screen.
Have you added something that overwrites the AI tables, or will NM2 changes to it stay on assembly? If not it may be cool to make a module for that, I know uou were planning on something like that as there's an empty AI folder in the datatables directory.

Edit: To be more precise, on loading the map selection.
"i put on my robe and wizard hat" ~Pkdragon
"rocks fall everyone dies" ~HPD
Welcome to the optimistic world of WWN :D

And logic doesn't work on MysteriousLad... ~Kireato
Wait, wait, wait.

Organized crime is selling bagels on television? Since when? ~Dragon Fogel

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Thu Feb 19, 2015 5:28 pm

MysteriousLad wrote:The game crashed on the map selection screen.
Edit: To be more precise, on loading the map selection.
That's odd, because I can't replicate that crash by replacing the first pointer (not the second one) with a Null Pointer in either War Room, Campaign or Versus mode.
Have you added something that overwrites the AI tables, or will NM2 changes to it stay on assembly? If not it may be cool to make a module for that, I know uou were planning on something like that as there's an empty AI folder in the datatables directory.
The NM2 modules should work at present (AW Project has a ripped set with custom values of them for comparison), but I haven't included them in Infinite COs yet.

That being said, the list that assigns which AI profile the AI uses has been updated but I don't believe the NM Modules touch those.

Summary: They don't now, probably will later.
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

User avatar
MysteriousLad
Rank: Mysterious President
Location: In your computer.

Re: ARMIPS Module - Infinite COs 1.2

Post by MysteriousLad » Thu Feb 19, 2015 8:03 pm

It crashed when I changed it 700000 (I had a map there which got overwritten by code, so the pointer points to some code and tries to start it. ) this crashed it.
"i put on my robe and wizard hat" ~Pkdragon
"rocks fall everyone dies" ~HPD
Welcome to the optimistic world of WWN :D

And logic doesn't work on MysteriousLad... ~Kireato
Wait, wait, wait.

Organized crime is selling bagels on television? Since when? ~Dragon Fogel

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Thu Feb 19, 2015 10:02 pm

Then I got nothing, unless it specifically has a null pointer check.

Will look into it.

Backporting AW3 maps is near flawless though:

Image
Image

Oddly enough, the Black Obelisk maps directly to the AW2 Factory. The Black Crystals and Towers don't map to any terrain however and just appear as null tiles.

Image
And I'm working on widening the box there and the text rendering space so that longer map names aren't clipped off.

Edit:
Image
And now I've idiot-proofed the map loading so that if the map doesn't crash, hitting R on 'not-a-real-terrain' (e.g. the Null terrain or the terrain used for the invention underlay) the game won't gib up.
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

User avatar
MysteriousLad
Rank: Mysterious President
Location: In your computer.

Re: ARMIPS Module - Infinite COs 1.2

Post by MysteriousLad » Fri Feb 20, 2015 5:39 pm

Pre-deployed module works like a charm, however I added some of the custom units I made for the AI. They move them however seem to refuse attacking with them, their battle copters/bombers also seem to refuse attacking any ships.
"i put on my robe and wizard hat" ~Pkdragon
"rocks fall everyone dies" ~HPD
Welcome to the optimistic world of WWN :D

And logic doesn't work on MysteriousLad... ~Kireato
Wait, wait, wait.

Organized crime is selling bagels on television? Since when? ~Dragon Fogel

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Fri Feb 20, 2015 9:58 pm

You have to set their aggressiveness tables in the AI Module AND you need to set the unit targeting bitmasks in the Unit Data. Otherwise the AI doesn't know how to use them or prioritise them.
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

User avatar
MysteriousLad
Rank: Mysterious President
Location: In your computer.

Re: ARMIPS Module - Infinite COs 1.2

Post by MysteriousLad » Fri Feb 20, 2015 10:48 pm

Xenesis wrote:You have to set their aggressiveness tables in the AI Module AND you need to set the unit targeting bitmasks in the Unit Data. Otherwise the AI doesn't know how to use them or prioritise them.
I tried looking for an explanation for how to do that but couldn't find one. (Doesn't explain Bombers not attacking the lander though)
"i put on my robe and wizard hat" ~Pkdragon
"rocks fall everyone dies" ~HPD
Welcome to the optimistic world of WWN :D

And logic doesn't work on MysteriousLad... ~Kireato
Wait, wait, wait.

Organized crime is selling bagels on television? Since when? ~Dragon Fogel

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Fri Feb 20, 2015 10:57 pm

I'll do a more detailed write up when I'm not about to sleep but for the time being, have a look at the AI Control bits (in the unit data of Infinite COs) and the aggressiveness percentages as well as the threshold damages for the units.
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Sat Feb 21, 2015 10:38 am

It's fairly simple to do.

Looking at the dump of the AI modules in AW Project (the same information is in the nightmare modules), you'll see something like this for each unit:

Code: Select all

; Medium Tank
; Max Counter Damage
	.db 100
; Min Attack Damage
	.db 20
; Minimum Fuel
	.db 30
; Minimum HP
	.db 20
; Aggressiveness
	.db 20,30,40,60,80,80,100
; Build Rate
	.db 8
These are all the AI variables that affect how the AI will use a unit.
Maximum counter damage and minimum attack damage is basically the AI's attack thresholds. It'll work out what amount of damage and will only attack if it is within its thresholds. To make a unit more aggressive, increase the max counter damage and lower the min attack damage. Zerg rushing is like 100+ counters and 0 min damage. Min Fuel/HP are self explanatory and control what the thresholds for refuelling and repairing are.

Aggressiveness controls the movement behaviour, the first value being beelining for the HQ and the last value being guarding the own HQ. The percentages is the chance that each unit will be built using that behaviour, from first to last (so 20% will be the first, then 30% of the rest, then 40% of the rest, etc etc. The first 100% is basically the most defensive behaviour, guaranteed).

That sums up that, just bear in mind you need to do these for EVERY AI profile that's used.

Now for the unit modules, you'll see this:

Code: Select all

;AI Unit AI
	.db AIDirectCombat

;AI Priority Attack Targeting
	.db AITargetGround+AITargetAir

;AI Considers this a Unit of Type
	.db AITargetGround
The first controls how the AI actually uses the unit (Direct/Indirect, self explanatory). The second is the priority targets, this unit will target these units as its first check of attacks, then others afterwards (it's why the AI doesn't regularly shoot landers with Neotanks for example!). The final one is simply what type of unit this particular unit is. The example I have there is from the Anti-Air, so it priority targets Ground+Air, and is considered a ground unit.

These are bitfields, so a unit can be multiple things.

Hopefully that's everything you need!
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Mon Mar 02, 2015 7:14 pm

I've updated the WIP version with some significant updates:

More than 255 Map supported!
AW1 Campaign Maps!
No/minimal graphical corruption with large lists of maps!
War Room menu works!
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

User avatar
Mark999
Rank: GM_S9_S9
Location: In America

Re: ARMIPS Module - Infinite COs 1.2

Post by Mark999 » Wed Mar 04, 2015 11:25 am

Xen, this is nuts. And I mean nuts! You could have every map ever made in one ROM!

I haven't experimented too much with what's been added but I noticed one thing: In the War Room CO Select menu there's a sixth "category" that contains nothing but Nell and it freezes if you select it.

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Wed Mar 04, 2015 12:46 pm

Weird, I'm not getting that in my master copy? :|

Also not yet, too many terrain elements from the other games not supported yet :P
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

User avatar
Mark999
Rank: GM_S9_S9
Location: In America

Re: ARMIPS Module - Infinite COs 1.2

Post by Mark999 » Wed Mar 04, 2015 3:20 pm

Oh, er, it seems to have been a one-time thing. I can't replicate it. >,<

Say, this probably isn't the place for it but I have a question. Do you know where in the RAM the Vs. Mode settings for a map are kept? I think I may be able to alter them in the middle of play for fun stuff like FOW that turns off and on during the game.

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Wed Mar 04, 2015 8:57 pm

Yeah, I got a whole bunch of stuff. Just search for whatever you're looking for in my notes. Fog of War, weather, income, etc. that sort of stuff is documented pretty well.
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

lstanley3

Re: ARMIPS Module - Infinite COs 1.2

Post by lstanley3 » Fri May 06, 2016 2:51 pm

Been poking around the code myself a bit, playing around with editing damage tables and whatnot, including a co power that makes it rain, but in testing I've found that Catherine's and BillyGates' pointerhack tables don't seem to effect defense. Those are the only two I've found there could be others, also Javier's Indirect defense does weird things, (Alternating treating A-Air as indirect vs Battle Copters, treating the Md. Tank as indirect) Is there something that I did wrong, or is the version I have borked. I may have posted something like this in another thread, but I

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Fri May 06, 2016 5:33 pm

It's probably not your fault! I am very likely to have some bugs in my code that I need to clear out.

I'll make sure to check over all the things you've mentioned here. Especially Javier's indirect defence, I likely have some flaw in the code for how I calculate it. If you find anything that doesn't behave how it should, mention it here so I have a record of it and can edit it.
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

lstanley3

Re: ARMIPS Module - Infinite COs 1.2

Post by lstanley3 » Wed May 11, 2016 7:46 am

After poking around I noticed something strange, when modding firing range for infantry, (did it by accident) it retains that one square range, but anything else it just seems to get the range boost. (Maybe the damage formula is treating tank cannons and a air guns as indirect attack weapons with range(1,1) and uses the direct combat attack script, but is treated as an indirect combat weapon for the purposes of range and damage calculation).

User avatar
Xenesis
Tri-Star CO
Tri-Star CO
Rank: Hydrocarbon Inspector
3DS Code: 2535-4646-7163
Location: 0x020232DD

Re: ARMIPS Module - Infinite COs 1.2

Post by Xenesis » Wed May 11, 2016 8:20 am

That's a default engine limitation which I haven't hacked around - Primary Weapons can have variable ranges, secondary weapons are always limited to range 1,1.
IST wrote:Even the worst individual needs to discover the joys of a chicken statue that is also a pregnant blonde housewife.

lstanley3

Re: ARMIPS Module - Infinite COs 1.2

Post by lstanley3 » Fri May 13, 2016 12:24 pm

Found another one;
AWDS Flak as Blue on Terra Maw, only deploys land.

Who is online

Users browsing this forum: Jugger [Bot], Multivac [Bot] and 0 guests