Rewrite the crate bonus logic.

Bug #895114 reported by DCoder DCoder
This bug affects 2 people
Affects Status Importance Assigned to Milestone

Bug Description

Crate goodies are one more messed up feature of this lovable game. I'm going to rewrite their routine soon, so let's hear your ideas. So far I've got this:

1 = FreeUnit
2 = Money
3 = Upgrade
4 = Explosion
5 = Heal
6 = Cloak
7 = Experience
; and so on

Crate.Effect = CrateBonus.Freebie
; generic crate params
Crate.Sound = FreeUnitSound
Crate.EVA = EVA_ReinforcementsArrived ; boredom
; Freebie specific params
Crate.FreeUnits = 1 ; how many random units to spawn
Crate.FreeInfantry = 3 ; - inf -
Crate.Weight = 5 ; like country random weighing, x shares in (sum x)

Crate.Effect = CrateBonus.Upgrade
; generic crate params
Crate.Sound = UnitUpgradeSound
Crate.EVA = EVA_UnitUpgraded
Crate.Anim = RING1 ; randomness prevails
Crate.Radius = 3
; Upgrade specific params
Crate.ArmorMultiplier = 1.1
Crate.SpeedMultiplier = 0.7
Crate.FirepowerMultiplier = 1.05

Crate.Effect = CrateBonus.XP
; generic crate params
Crate.Sound = UnitUpgradeSound
Crate.EVA = EVA_UnitUpgraded
Crate.Radius = 3
; Upgrade specific params
Crate.ExtraExperienceAbsolute = 300 ; 300 credits worth
Crate.ExtraExperienceRelative = 0.4 ; 40% worth of one promotion level, serious bonus

; and so on

As nice as that is, it is really not compatible with the current [Powerups] model, so
[CrateRules]Powerups.UseAresModel = y/n
or something?

(Gotta be careful not to break the different handling in singleplay campaign mode.)

Also, aside from the new bonus types, the actual crate randomness logic could use some tweaking. This will be changed, not sure if configuration to leave the old broken logic in is worth it.

Revision history for this message
Bug Importer (bug-importer) wrote :

under freeunit, make a override system of what units you want. like have it like the paradrop clone system... you decide what units and how many. This be nice. OR make it so it uses a taskforce from AIMD.ini. This would be a good way to make it so the crate makes it so it uses a taskforce also if you desire. this way we can have custom armies.

p.s sorry if i wasnt supposed to use note for this idea :p

Revision history for this message
MRMIdAS (mrmidas) wrote :

I'd go with what you suggested DC, I'd also like a "free squad" (current one doesn't work) possibly with a list of squads to pick from (using AIMD.INI [TaskForces] names), fire a weapon at that spot (could be used for iron curtain, money, even invisibility, gas or trap crates) as well as the usual default crates.

Revision history for this message
Untrue (untrue) wrote :

Crate logic is uncommon in all patches and I really wanted to see this in Ares someday.

There should also be a flag that allows you to manipulate the contents of the crate.

Powerups.UseAresModel=false ; should be deglobalized, D.
CrateBeneathIs=[Powerups] ; removing CrateBeneathIsMoney. if(Powerups.UseAresModel==1) then use DCoder's [CrateGoodies].
CrateSurvivalRate=int%||float% ; percentage rate whenever a [TechnoType] is destroyed it generates crate bonus.

Revision history for this message
YR M0ddEr (yr-m0dder) wrote :

Will this rewrite fix 0000562?

Revision history for this message
AlliedG (alliedg) wrote :

I think ICBM=0,CHEMISLE,yes ; nuke missile one time shot

Should use a customisable array of random superweapons e.g. any [SuperWeaponTypes] to pick from and not be hardcoded to first Type=MultiMissile

Revision history for this message
RandomNutjob (randomnutjob) wrote :

Just wondering regarding units if would leave it so could get anything or perhaps toy with having country/side specific
As for setting odds for x, y or z then imagine go from say Money downwards, money being 20% and SW at bottom with ~5% [kinda like CoD care packages]

Revision history for this message
g.a (g.a) wrote :

Can some of this already be done by setting different effects on crate animations?

Revision history for this message
cranium (cranium) wrote :

Fully Support this. It would be neat to have a new crate logic put into affect. The current crate system "while alright" It does need some help.

Revision history for this message
Renegade (renegade) wrote :

I have converted this issue into a blueprint (linked in the sidebar).
Closing this as invalid.

Changed in ares:
milestone: 1.0 → none
status: Incomplete → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Related blueprints

Remote bug watches

Bug watches keep track of this bug in other bug trackers.