[0.10.6] Gun Bonsai -- everything-compatible weapon upgrading

Projects that alter game functions but do not include new maps belong here.
Forum rules
The Projects forums are only for projects. If you are asking questions about a project, either find that project's thread, or start a thread in the General section instead.

Got a cool project idea but nothing else? Put it in the project ideas thread instead!

Projects for any Doom-based engine (especially 3DGE) are perfectly acceptable here too.

Please read the full rules for more details.
User avatar
Femidoom
Posts: 5
Joined: Fri Jun 16, 2023 4:10 pm
Preferred Pronouns: She/Her
Operating System Version (Optional): windows...?

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by Femidoom »

even without libtooltip it refuses to work
RhythmCorvid
Posts: 2
Joined: Tue Dec 05, 2023 5:45 pm
Preferred Pronouns: She/Her

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by RhythmCorvid »

Hello!

I've been using this mod pretty heavily ever since someone introduced it. With Doom RPG being a too-heavy moc for RPG scaling, and it making some monsters positively abysmal to fight, I was still looking for something RPG-like that I could add more enemies to, so that there's more of them so there has to be more for me. Gun Bonsai has filled this spot nicely and has cemented itself in my load order. I've used it with DRLA, Final Doomer, Samsara, Golden Souls, Simon's Destiny, Ashes, and a few others. I have really enjoyed it.

That being said, I have a few requests if I'm allowed, or at least suggestions. I will admit I haven't read the entirety of the post because of how many messages there are and the suggestions I have, so if others have suggested these I apologize.

1) Allow turning down stacks of something:
- Say I take 5 stacks of rapid fire but the fifth one ends up screwing me up because it glitches my gun or makes it fire *too* fast for me. If I could turn it back to 4/5 instead of just to "Off" it would let me experiment more with the levels I get.

2) Allow multiplicative/exponential/etc leveling.
- Early on the levels need to be faster to get your momentum going, but later levels need to be longer because of the amount of damage you can output. In the beginning, 5000 XP is good for the first level, but once you're starting to kill entire maps with a few shots, it starts piling on the XP really quickly, especially because of things like lazy points' combo.

3) Add more features for guns.
- Reduced/Increased Spread (Make that Chaingun into a Sniper, make that SSG into an even broader-firing shotgun but make the pellets each do a ton of damage)
- There's Rapid Fire, but what about Slowed Fire (to make a normally rapid fire weapon into a slower, corrosive one maybe?) for making some gun slower but more powerful by choice? Along with the suggestion to allow 4/5 stacks of something, maybe taking an inverted perk (Rapid Fire -> Slowed Fire) could reduce things back down in the event you "overdo it" and cost you a level in the process so it could be more immersive.
- If a gun had a Reload Speed, making that selectively faster as Rapid Fire can make it faster but it also makes some guns fire too fast.
- With the above "On Reload" perks, like "Causes an explosion around the player for X amount of damage per bullet reloaded" or something.
- Increased Magazine Size (For guns that support it. Bandoliers sort of works depending on the mod)
- Add bonuses like "Extra shot per shot", "More Pellets", maybe some "ammo" mods, sort of like the elemental mods, but exclusive to each other (slug vs. shells vs. dragons breath etc)
- Add Melee Unit range to melee weapons. It might not make much sense, but it is one of the bigger things melee needs is range and being able to increase the punching distance would be neat. Could call it "Ki Strikes" or something where attacks have extended 'energy' range.
- The critical shots mod has "critical hits" as a rare thing that happens, however having them as a percentage of something that the gun could trigger could be an option for Gun Bonsai. % chance to do X multiplied damage, and more stacks increase likelihood, and then you could have other perks that play off things like "When crits happen do X".
- Allow a feature for a level up to give a gun XP sharing. Some guns are hard to level up, especially if you got them later in a run, so a gun being able to give 1/10th of it's XP to another gun or something would be nice. It's like the EXP Share from Pokemon, only for your bullets.

4) Balancing the elemental mods
- These mods are all good, but ultimately, they all kind of fall short over time compared to either lightning or just explosive death/he shots. Slow + Stun + Chain Lightning 50% Enemy Health > Slow Poison/Corrosion or Fast Fire to 50%. That, or as mentioned HE Shots or Explosive Death can really make a gun very powerful and then those elemental effects aren't quite really as useful. If you start adding in stacks of damage, and then add in even a couple of stacks of rapid fire, most things seem like they would be better off using lightning, so, I'm not sure how to really balance them. However:

- Poison may need to tick harder, faster, and with less stacks in order for it to carry a weapon's damage. Corrosion does a good job of doing damage with a few levels in it, but poison generally feels pretty weak even with a bunch of stacks. I've hammered into a boss enemy with thousands of HP with a 15 damage pistol that applies poison and it just takes a lot of time. Fire will beat it to 50% for sure, and corrosion seems to beat it out just because of higher starting damage and higher ending damage. I like the bonuses that they give, and think all should follow a sort of pattern In order to keep them equal.
- First tier is DOT or Status.
- Second tier is effect when stacks are added
- Third tier is AOE damage that is roughly equal.
Or something where the tiers equally have analogues in other trees, that way things feel more like sidegrades instead of one being flat out better. Hallucinogens and Revivication are good examples of the same effect, but Putrefaction and Chain Lightning are too different, despite being the third tier.

Chain Lightning being able to deal 50% of enemy health across multiple enemies means that to kill a group of mobs all you have to do is kill two of them. It's incredibly powerful for that reason, and I've killed two enemies and then opened up closets to find the contents inside dead thanks to chain lightning. It's very good at clearing maps. If Fire didn't stop burning at 50% with a perk or burned longer per stack, etc it could keep up. Same with Corrosive because of the stacks adding more damage and it being able to scale fairly heavily, but poison cannot really add to this style of damage. Weakness is a nice modification, but it doesn't get applied quite so universally, so it could be useful in a fight, or useless. Perhaps poison weapons should gain some aoe to their bullets to apply poison to everything in range as a part of the perk to make it so everything starts ticking faster, and everyone gets applied weakness.

Not sure what the answer is here but the elemental trees aren't quite balanced, though the idea is great and I would like to see more elements or effects added. If every third tier AOE was equally as powerful as chain lightning, it could add to some versatility.

5) Silly effects
- Maybe something like every X gun levels you can add a bonus silly effect. Add a color multiplier to the bullet puffs or something and make them rainbow. Make the beams the plasma rifle fires change colors. Is stuff like that possible? If it's not too intense on the game and it's lightweight and you're multiplying colors (sort of like mk-champions would with sprites and their champion colors) maybe you could do some silly effects or bonus effects that aren't the most useful but are fun to have. The confetti on headshot style thing comes to mind.

6) HE Shots/Explosive Damage Knockback reduction
Explosive Death has a tendency to launch you to the ceiling of whatever map you're on if you're too close. I don't know what the cause of this is, but it can sometimes really throw you a good distance, and I'm not sure if it's intended. The self-damage reduction might need to include a knockback reduction, and Blast Shaping might benefit from knockback reduction as a perk, too. or it being a separate perk altogether.

7) Scavenge Lead Boost
- This perk doesn't really benefit you as much as Scavenge Steel or Scavenge Blood per level, because of the fact that pickups aren't equal. One rocket is much bigger than a clip that has two bullets in it. I think dropping full-sized drops might be the solution here, but letting the cap for Scavenge Lead be 2-3, or something. I tend to play with triple monster density and scavenge lead really comes in handy but only after 2-3 stacks and after I've had time to fill up on stuff I'm not actively using. Then it becomes a bit less needed once I have the AOE on my guns. I think it would need to be more useful throughout, and this means more ammo in the beginning. The return on investment for scavenge lead needs to be a bit higher. Maybe for guns with higher capacity/ammo pools it could drop more.

Overall, I really like this mod and I'm gonna keep using it, so I hope to see this take off more, as the light RPG aspects are nice without having to dedicate to Doom RPG. Thank you very much for your time and making this, as it's quite a fun mod and there's something really satisfying wielding the standard pistol and running around pulling off incredible feats because I really put time into it.

Thank you, have a good night.
Last edited by RhythmCorvid on Wed Dec 06, 2023 12:04 am, edited 4 times in total.
User avatar
BoneofMalkav
Posts: 81
Joined: Thu May 22, 2014 6:04 am
Graphics Processor: nVidia with Vulkan support
Location: It's Never Worth The Risk

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by BoneofMalkav »

One feature I'd like is to have gun upgrades but the ability to disable the elemental mods. Or even select what gun upgrades you can select.
User avatar
stainedofmind
Posts: 154
Joined: Sun Sep 01, 2019 10:59 am

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by stainedofmind »

BoneofMalkav wrote: Thu Dec 07, 2023 7:31 am One feature I'd like is to have gun upgrades but the ability to disable the elemental mods. Or even select what gun upgrades you can select.
You can disable the elemental upgrades using the BONSAIRC lump. I have done this myself for certain styles of gameplay.
User avatar
ToxicFrog
Posts: 229
Joined: Thu Oct 05, 2017 10:09 am
Preferred Pronouns: She/Her
Operating System Version (Optional): NixOS

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by ToxicFrog »

Thank you everyone who's posted about how much you enjoy the mod. :) Work on 0.11 is proceeding in fits and starts, and in the meantime I've batched up a few changes and fixes into the 0.10.5 branch to go with the imminent Indestructable 0.3 release.

First, though, I've got a bunch of posts to catch up on, so let's go. Bug reports and technical difficulties in this post.
Dan_The_Noob wrote: Sat Sep 30, 2023 12:31 am chainsaw sweep crash, no idea.
This was fixed in 0.10.4, or should be.
Femidoom wrote: Sat Nov 25, 2023 1:17 pm I- it won't fucking launch???
It used to work.
image might be too low quality, it kept yelling at me to pick a smaller file.
Ive tried adding libtooltipmenu before and after it in ZDL (which worked with it before)
This looks like it's crashing in the HUD code, specifically in the part where it does a division to figure out how close to your next level-up you are -- if it somehow calculates the XP to level up as 0, this will happen.

What are your config values for bonsai_base_level_cost, bonsai_level_cost_mul_for_melee, and bonsai_level_cost_mul_for_wimpy? If any of those are 0 this could be the result. If they're all nonzero I have no idea what's going on.
schkorpio wrote: Sat Sep 16, 2023 6:47 pm Is there a console command to level up articially? For testing and or if a save game becomes corrupted or you just want to start at a later map in coop etc.
Yep, it's in the modding documentation. You can grant weapon or player XP or just install upgrades directly.
RevanGarcia wrote: Sat Aug 26, 2023 8:28 pm
AliciaPendragon wrote: Sat Aug 26, 2023 6:42 pm Where exactly is that setting? In gun bonsai's options or DRLA's?
It's in Gun Bonsai's compatibility options: "Weapon upgrades bind to".
I had no problems with Gun Bonsai so far, mine is set to "individual weapon with inheritance".
This setting only affects how Gun Bonsai upgrades are treated when dropping and picking up weapons; it shouldn't have any effect on DRLA upgrades. That said, based on your posts elsethread, it sounds like you've tracked this down to a bad interaction between DRLA and Indestructable's time-stop effect, likely GB's Swiftness upgrade as well. A workaround in the meantime, for anyone else encountering this, is to avoid dropping weapons while time is stopped or slowed.
Zonky wrote: Sun Aug 27, 2023 12:18 pm I was using this with DRLA and I noticed something, the bandolier upgrade that increases your ammo capacity seems to not stack with DRLAs backpacks that change how ammo works.
Gods, I regret implementing Bandoliers just because of how many bad interactions it has. It's practically impossible to write ammo capacity upgrades that don't interfere with each other. On the plus side, while writing this I had an idea for how to rework Bandoliers: instead of touching the ammo limits at all, instead have it siphon off and store ammo when you're nearly full, and feed the ammo back into your inventory when you run low. I don't think that's getting into the 0.10.x series though.
User avatar
ToxicFrog
Posts: 229
Joined: Thu Oct 05, 2017 10:09 am
Preferred Pronouns: She/Her
Operating System Version (Optional): NixOS

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by ToxicFrog »

Now, suggestions and feedback.
Zonky wrote: Sun Aug 27, 2023 12:18 pm While I'm at it, do you think it'd be possible to add upgrades related to weapons that use magazines? Maybe it's possible to add upgrades that increase magazine capacity?
Mags/reloading are something each mod has to implement itself, rather than something built into the engine, so code for that would have to be customized for each mod in question. So it's not something that's ever going to be part of Gun Bonsai proper, but if anyone wants to write an addon for a specific mod that does something like that, go for it! I've done my best to make it easy for people to write addons for GB, so they can implement cool mod-specific behaviour that can't go into the core mod.
RhythmCorvid wrote: Tue Dec 05, 2023 10:16 pm 2) Allow multiplicative/exponential/etc leveling.
AndroSynth wrote: Wed Nov 22, 2023 10:28 am One question I had was have you considered adding a non-linear scaling method to the XP needed per level? From my experience, no matter the value put in for score/damage factor, and XP per level, that gaining later levels actually happen more rapidly than earlier levels. I think this is exacerbated by the other mods I'm running in addition, but not only. I think the root cause is that the damage from upgrades grows non-linearly (which not in itself a problem), so the XP must grow accordingly, or fall behind.

To that point, I did tweak your code on my personal version and added in a slight exponential growth factor for each level. That way the levels slow down a bit at higher levels, and I'm incentivized to upgrade my base equipment (with DoomRLA or alternative) rather than sticking to the early guns.

Haven't done so, but I'd be glad to put a proper github pull request up if you have any interest in adding that feature, or can just show the couple lines I changed. If not, no worries, and thanks for the fun!
I'd want to make it configurable (with sensible defaults) rather than hardcoded, but please share the code (or open a PR) if you're ok with me basing the final feature on it; this seems like a good thing to have. It's something I toyed with in early prototypes but eventually went with the current linear setting, but I was also mostly playing on more sedate wads; I gather it rapidly gets kind of silly on slaughtermaps.
RhythmCorvid wrote: Tue Dec 05, 2023 10:16 pm 1) Allow turning down stacks of something:
This would be surprisingly easy to implement on the code side, I think the annoying part would be the UI wiring needed to enable it. Added to the TODO list.
RhythmCorvid wrote: Tue Dec 05, 2023 10:16 pm 3) Add more features for guns.
A lot of these just aren't possible to implement in a general way, sadly. For example, shot spread is usually baked into the code used to implement the weapon's fire states, rather than an actor property, and thus needs actor-specific code to override, which can't be done in a generally-compatible way. Same deal with anything around reloading/magazines, extra pellets per shot, range increases.

That said, critical hits are an interesting idea; I've tried to avoid too much randomness, but it might be neat to have as an alternative to the normal Damage upgrade that hits harder but less reliably, with other upgrades that key off crits locked behind it. Not in 0.10 but I think that could a fun thing to add in 0.11+. Might even make sense to move some of the spicier upgrades like explosive shots and submunitions behind it as "on crit" or "on crit kill" effects.

As for XP sharing, note that XP is awarded to your currently readied weapon, so doing things like firing a rocket and switching guns before it impacts, or landing a DoT and swapping weapons, can be a good way to get some extra XP onto a weaker weapon.
RhythmCorvid wrote: Tue Dec 05, 2023 10:16 pm 4) Balancing the elemental mods
This is an ongoing process, and I'll think about your suggestions. I will say that Poison, specifically, really wants a rapid fire weapon, and a pistol won't cut it; you want it on a chaingun or plasma rifle, or something with similar RoF. It really shines when you're landing lots of little hits, in contrast to Acid which is optimized for powerful but slow weapons.

Chain Lightning does probably want nerfing (or the other AoE effects buffing, or both). That said, I tend to pick Revivification instead; it may not be as effective, especially in maps with high energy density, but I find it more fun.
RhythmCorvid wrote: Tue Dec 05, 2023 10:16 pm 5) Silly effects
Something I've had kicking around as a backburner idea since the very early version, as it happens. Other ideas include "confetti when you pick up a new weapon/level up/etc", "killed enemies have a chance to rocket into the air and burst like a firework", and "an unlockable hint system full of useful tips like 'try to avoid dying' and 'shoot enemies to damage them'". There's just always something else to work on first -- either bugfixes and gameplay features, or different projects entirely.
RhythmCorvid wrote: Tue Dec 05, 2023 10:16 pm 6) HE Shots/Explosive Damage Knockback reduction
Explosive Death has a tendency to launch you to the ceiling of whatever map you're on if you're too close.
Huh. I've never seen that, but I'll experiment with it. It's not an upgrade I use a lot, to be honest.

That said, my understanding was that knockback is based on damage inflicted, so I would expect the self-damage reduction of Explosive Death and Blast Shaping to already reduce knockback significantly.
RhythmCorvid wrote: Tue Dec 05, 2023 10:16 pm 7) Scavenge Lead Boost

- This perk doesn't really benefit you as much as Scavenge Steel or Scavenge Blood per level, because of the fact that pickups aren't equal. One rocket is much bigger than a clip that has two bullets in it. I think dropping full-sized drops might be the solution here, but letting the cap for Scavenge Lead be 2-3, or something.
For me I think this is actually my favourite of the three Scavenge perks! It usually results in me having more ammo than I know what to do with, which means I can spent it more profligately to avoid losing health or armour in the first place. That said, the rocket/clip dichotomy is already taken into effect, as best I can -- basically, it defaults to dropping ¼ as much ammo as a normal ammo pickup, and if this results in fractional ammo it rolls dice about it. So the comparison is between "2-3 bullets" and "25% chance of getting a rocket (and 75% chance of nothing)".

This isn't a panacea, but it's hard to make it more tuned since it doesn't know a priori how to value individual rounds, so the best it can do is guess based on how many you're expected to pick up at a time: a standard bullet pickup contains 10 bullets and a standard rocket pickup contains 1, so rockets are 10x more valuable (and thus 10x rarer) than bullets.
User avatar
Dan_The_Noob
Posts: 878
Joined: Tue May 07, 2019 12:24 pm
Graphics Processor: nVidia with Vulkan support

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by Dan_The_Noob »

AndroSynth wrote: Wed Nov 22, 2023 10:28 am One question I had was have you considered adding a non-linear scaling method to the XP needed per level? From my experience, no matter the value put in for score/damage factor, and XP per level, that gaining later levels actually happen more rapidly than earlier levels. I think this is exacerbated by the other mods I'm running in addition, but not only. I think the root cause is that the damage from upgrades grows non-linearly (which not in itself a problem), so the XP must grow accordingly, or fall behind.
there are a few things ive thought about for the progression curve.

settings like
-XP multiplier exponent per level. (XP = XP * level * multiplier)
-Perks per level. (multiple picks per level up or at certain level intervals, like 2 picks every 5th level)
-Min level requirements for certain perks. (Perk Tiers)
-Maximum caps on certain perks too.

it would probably be a bit of work to add these functions though.
User avatar
ToxicFrog
Posts: 229
Joined: Thu Oct 05, 2017 10:09 am
Preferred Pronouns: She/Her
Operating System Version (Optional): NixOS

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by ToxicFrog »

Perk requirements are actually pretty easy to add; the hooks are already there for the functionality that checks if a given perk is compatible with your current weapon and that you have all the prerequisites for it. Indeed, a bunch of perks already have level caps, usually because it either stops improving or gets way too powerful after a certain point. Nothing has a minimum level requirement yet but it would be trivial to add, a literal one-line change in most cases.

Exponential XP scaling, similarly, only requires changing one thing (well, plus all the UI/localization/documentation/MENUDEF changes), WeaponInfo::GetXPForLevel(). At the moment the scaling is triangular, i.e. the cost to go up a level increases by a constant amount per level and the total cost to reach level N is (base_cost * (N²+N)/2). It would not be difficult to incorporate an exponential term instead of, or as well as, the quadratic term. 0.11 changes some of this code but in ways that mostly make it easier.

Varying how many upgrades you get each level is easy to implement in principle (once again the changes only need to be made in one place, Registry::GenerateUpgradesFor*()), but I am at a loss to make configuring it a reasonable experience.
User avatar
Major Cooke
Posts: 8193
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by Major Cooke »

Is there any ability to add XP on kill? Or is it all via damage? For my mod Triple M, I'd prefer it be on kill but first I need to figure out how to add monsters to a list to give exp for. Seems right now I'd just be doing SendNetworkEvent on monster death.

I'm assuming the bonsai-debug,w-xp <xp> is for weapons and p-xp for players?
User avatar
Carrotear
Posts: 155
Joined: Thu Sep 03, 2015 10:45 pm
Preferred Pronouns: No Preference
Graphics Processor: Intel (Modern GZDoom)

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by Carrotear »

Major Cooke wrote: Wed Dec 20, 2023 10:51 pm Is there any ability to add XP on kill? Or is it all via damage? For my mod Triple M, I'd prefer it be on kill but first I need to figure out how to add monsters to a list to give exp for. Seems right now I'd just be doing SendNetworkEvent on monster death.

I'm assuming the bonsai-debug,w-xp <xp> is for weapons and p-xp for players?
This idea can be achieved by using LossForWords's Hotline Doom minimod, setting xp gain by damage to lower or 0, and setting xp gain by score to any value.
RhythmCorvid
Posts: 2
Joined: Tue Dec 05, 2023 5:45 pm
Preferred Pronouns: She/Her

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by RhythmCorvid »

7) Scavenge Lead Boost

I've been thinking about this a bit, what if you used fractional big pickups? 1~n stacks of scavenge lead guaranteed to drop 1 large pickup of 10~100% quality or something, and since it's a large pickup it is roughly the same to the game? Since big pickups are more consistently ammo dense it gives you more room to start your floor and increase your ceiling. I do end up taking enough stacks of scavenge lead where it doesn't matter, but I have to admit killing an enemy to get two bullets back just feels meh. Maybe something based on ammo pool of the gun (since different mods change the max ammo, as does bandoliers. Making that increase ammo (or making pickups more valuable as an entirely separate perk) per pickup could help if it doesn't already.) and doing something there? Spitballing, not looking to give concrete suggestions, just ideas. Or maybe using the builtin actor for bonsai to just roughly assign minimums to the the rolls, so like if it's in slot 5, 1/4 or 1, if it's in slot 2 or 4, 1/4 or 4.
User avatar
ToxicFrog
Posts: 229
Joined: Thu Oct 05, 2017 10:09 am
Preferred Pronouns: She/Her
Operating System Version (Optional): NixOS

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by ToxicFrog »

Major Cooke wrote: Wed Dec 20, 2023 10:51 pm Is there any ability to add XP on kill? Or is it all via damage? For my mod Triple M, I'd prefer it be on kill but first I need to figure out how to add monsters to a list to give exp for. Seems right now I'd just be doing SendNetworkEvent on monster death.

I'm assuming the bonsai-debug,w-xp <xp> is for weapons and p-xp for players?
Yeah, w-xp grants XP to the currently wielded weapon and p-xp to the player. Note that under normal circumstances player XP is granted automatically as the player levels up weapons.

That said, you shouldn't use those for mod integrations. A better choice is to set the bonsai_damage_to_xp_factor cvar to 0, bonsai_score_to_xp_factor to 1, and then just give the player points equal to the amount of XP you want them to gain, by increasing the "score" field on the PlayerPawn when they kill something (or, less directly, spawning an appropriate ScoreItem when something dies that the player can then pick up).
mike3k wrote: Sat Sep 30, 2023 2:53 pm It doesn't look like its working with Hedon - bloodrite. Or is it some special way to connect it? I got instant fatal error
It worked in Hedon last time I tested it, but Hedon has also gotten a massive update since then, so I'll have to check again. I don't remember having to do anything special to get it working but you do need to load it in the version of gzdoom that comes with Hedon, rather than trying to load Hedon in your own gzdoom install.
User avatar
Major Cooke
Posts: 8193
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by Major Cooke »

Ah, scoreitem is a thing? Okay. I'll try that. Thanks!
User avatar
ToxicFrog
Posts: 229
Joined: Thu Oct 05, 2017 10:09 am
Preferred Pronouns: She/Her
Operating System Version (Optional): NixOS

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by ToxicFrog »

mike3k wrote: Sat Sep 30, 2023 2:53 pm It doesn't look like its working with Hedon - bloodrite. Or is it some special way to connect it? I got instant fatal error
Looked into this a bit more. It looks like Hedon is still based on an older version of gzDoom, which in particular is missing two features I use:
- `WorldEvent.NextMap` in the LevelUnloaded, used by an upcoming version of Indestructable
- `+DONTFOLLOWPLAYERS` monster flag, used by the new Revivification behaviour introduced in 0.10.0.

This means I've also broken lzDoom compatibility. Sigh.

Neither of these would be difficult to backport from gzDoom into lzDoom and hDoom, but I don't want to open the wormcan that is maintaining additional forks myself, and it would be a dick move to run around pestering Rachelle and drfrag to cut new releases of projects they're done with just to support my mod.

The use of NextMap in Indestructable is just a small eficiency thing, and since it only matters when you're leaving a level it's not a big deal to drop that entirely, which should restore both lzDoom and Hedon compatibility. For Gun Bonsai, I added that to stop your reviv'd minions from cuddling up to you when not actively involved in fighting, but with the short unsummon timer now it might be less of a problem; I'll test it out. Hedon support isn't a high priority for me but I would at least like to retain compatibility with lzDoom -- although sooner or later I expect that to become impossible.
Major Cooke wrote: Thu Dec 21, 2023 9:52 am Ah, scoreitem is a thing? Okay. I'll try that. Thanks!
Documented here. Bonsai's score-based XP just reads the player's 'score' field, so anything that increases that will work once the cvars are set appropriately.
User avatar
Major Cooke
Posts: 8193
Joined: Sun Jan 28, 2007 3:55 pm
Preferred Pronouns: He/Him
Location: QZDoom Maintenance Team

Re: [0.10.4] Gun Bonsai -- everything-compatible weapon upgrading

Post by Major Cooke »

I'll see what I can do for that soon.

Any chance you could introduce service into your mod? Some mods might make use of Score and ScoreItem for different things. Using Service classes will provide seamless integration for others and minimize conflicts.

Return to “Gameplay Mods”