[Ohrrpgce] SVN: james/12684 Add attacker animations "Run and Hide" and "Unhide" that work like "Jump

James Paige Bob at hamsterrepublic.com
Sun Jan 30 06:24:43 PST 2022


On Sun, Jan 30, 2022 at 9:06 AM James Paige <Bob at hamsterrepublic.com> wrote:

>
>
> On Sat, Jan 29, 2022 at 11:25 PM Ralph Versteegen <teeemcee at gmail.com>
> wrote:
>
>>
>>
>> On Sun, 30 Jan 2022 at 04:12, James Paige <Bob at hamsterrepublic.com>
>> wrote:
>>
>>>
>>>
>>> On Fri, Jan 28, 2022 at 9:55 AM Ralph Versteegen <teeemcee at gmail.com>
>>> wrote:
>>>
>>>>
>>>>
>>>> On Fri, 28 Jan 2022 at 16:46, James Paige <Bob at hamsterrepublic.com>
>>>> wrote:
>>>>
>>>>>
>>>>>
>>>>> On Thu, Jan 27, 2022 at 7:01 PM Ralph Versteegen <teeemcee at gmail.com>
>>>>> wrote:
>>>>>
>>>>>>
>>>>>>
>>>>>> On Mon, 17 Jan 2022 at 03:53, James Paige <Bob at hamsterrepublic.com>
>>>>>> wrote:
>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> On Sat, Jan 15, 2022 at 11:25 PM Ralph Versteegen <
>>>>>>> teeemcee at gmail.com> wrote:
>>>>>>>
>>>>>>>> Nice! Just what was always missing.
>>>>>>>>
>>>>>>>> I think that the name "Run In (unhides attacker)" which you used at
>>>>>>>> first was better than "Unhide", because it does more than just unhiding.
>>>>>>>> Plus I think that when the attack editor gets cleaned up the Always
>>>>>>>> Hide/Unhide options would be placed right below the attack animation
>>>>>>>> option, so "Attacker animation: Unhide" "Unhide attacker: YES" would be odd.
>>>>>>>>
>>>>>>>
>>>>>>> Good point. I'll rename it back to "Run In"
>>>>>>>
>>>>>>>
>>>>>>>>
>>>>>>>> I noticed some glitches (bug #1234) but they're shared with Jump,
>>>>>>>> so no new problem there.
>>>>>>>>
>>>>>>>> I was hoping that adding BattleSprite.hidden meant some code
>>>>>>>> cleanup occurred, but I see you dodged the issue (something I should learn
>>>>>>>> to do) and just added it in addition to the .vis mess. Which means that the
>>>>>>>> following comment change you made is not correct (or at least, removes
>>>>>>>> truth)
>>>>>>>>
>>>>>>>
>>>>>>> You caught me! Okay, I went back and did the bare minimum of cleanup
>>>>>>> to make my change to that comment accurate :D
>>>>>>>
>>>>>>
>>>>>> This (r12690) really is some nice cleanup, disentangling .hidden from
>>>>>> .vis. But did you check everywhere that .vis was used to see they should
>>>>>> check .hidden?
>>>>>>
>>>>>
>>>>> No I didn't check everywhere, could have missed other spots too
>>>>>
>>>>>
>>>>>> In particular, I noticed that targenemycount checks just .vis, so
>>>>>> that has some significant consequences: previously if all an enemies jumped
>>>>>> it would count as being Alone, now not. I'm not sure if that's a bug or a
>>>>>> feature, maybe it needs a backcompat or preference bit.
>>>>>>
>>>>>
>>>>> I think the old behavior was a bug. Definitely unintentional.
>>>>>
>>>>
>>>> I agree, but maybe I'll add a pref bit anyway, since it's easy to do
>>>> so, and could be useful.
>>>>
>>>>
>>>>>
>>>>>
>>>>>> More significantly battle_meters_can_advance and
>>>>>> turn_mode_time_passage now don't advance time if all targets are hidden,
>>>>>> which is game breaking.
>>>>>>
>>>>>
>>>>> Oop! Yeah, that one sounds important to fix!
>>>>> Hmmm. does that mean it would only break when all heroes and all
>>>>> enemies jumped at the same time? That would be rare.
>>>>> Either way, I have added it to my todo list to test and fix
>>>>>
>>>>
>>>> To hit the issue you only need all enemies to jump. Which is easy if
>>>> there's just one.
>>>>
>>>
>>> Did you already do something to fix this one?
>>> I can't reproduce this in either active-time or turn-based combat. When
>>> there is a single enemy, and it jumps, time flows normally as expected
>>>
>>
>> I should have been more specific. Those functions call targenemycount and
>> cause time to advance when it would otherwise be paused if there are no
>> enemies. For active time battles, that means if "Pause on all battle menus
>> & targeting" or one of the other pause bits is set. I just tested it in
>> active time and can confirmed it's broken. You can still tap ESC to advance
>> time. Well, since I went to the trouble of identifying it and adding
>> is_foe_of and testing I guess I'll fix it too.
>>
>>
>
> I am still puzzled as to why I can't reproduce this. In Wandering Hamster,
> I do have the "Pause on all battle menus & targeting" bit on, and I tested
> a bunch of times with the 1 Jump Knight battle, and I can't get it stuck no
> matter what I do :shrug:
>

Oh! Wait! I see! I had forgotten that Wandering Hamster's "Defend" attack
avoids this situation. If I don't use defend, then yes, I think I can get
stuck as you described afterall.


>
>>>
>>>>
>>>> Completely separately to .vis vs .hidden, targenemycount also hasn't
>>>> been updated for turncoat and defector. In some places it's used to count
>>>> allies, in others to count foes.
>>>>
>>>>
>>>>>
>>>>>
>>>>>> Also I noticed reset_enemy_state doesn't reset .hidden, so transmog
>>>>>> used to undo Jump, but now it doesn't. Also a bug-feature? I didn't go
>>>>>> through all uses of .vis.
>>>>>>
>>>>>
>>>>> I didn't realize that transmog used to reset jump. I guess I had never
>>>>> tested transmog mid-jump-- but I would consider the new behavior a bugfix.
>>>>> I did intentionally avoid resetting hidden on transmogrification, figuring
>>>>> that sometimes you would want an enemy to hide, and then return in a
>>>>> different form.
>>>>>
>>>>
>>>> I agree that it's better that transmog doesn't unhide. But we should at
>>>> least try to document all these changes as bugfixes in whatsnew.
>>>>
>>>>
>>>>>
>>>>> I better review all of the .vis uses just to be complete.
>>>>>
>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>>
>>>>>>>    vis as bool   'Roughly, but not exactly, visibility:
>>>>>>>>                  'For combatants: Is alive (or dying interruptted)
>>>>>>>> and visible (didn't jump).
>>>>>>>>                  '  Gets set to YES while an enemy is performing an
>>>>>>>> on-death attack.
>>>>>>>> -                '  Gets set to NO while it's dissolving or fleeing
>>>>>>>> after death, or
>>>>>>>> -                '  or if jumped off-screen
>>>>>>>> +                '  Gets set to NO while it's dissolving or fleeing
>>>>>>>> after death
>>>>>>>>
>>>>>>>> On Sun, 16 Jan 2022 at 04:15, <subversion at hamsterrepublic.com>
>>>>>>>> wrote:
>>>>>>>>
>>>>>>>>> james
>>>>>>>>> 2022-01-15 07:15:33 -0800 (Sat, 15 Jan 2022)
>>>>>>>>> 279
>>>>>>>>> Add attacker animations "Run and Hide" and "Unhide" that work like
>>>>>>>>> "Jump" and "Land"
>>>>>>>>>
>>>>>>>>> Add bitsets that allow other attacks to hide/unhide attackers,
>>>>>>>>> regardless of their attacker animations
>>>>>>>>>
>>>>>>>>> Add a .hidden member to the BattleSprite type, instead of
>>>>>>>>> overloading the meaning of .vis
>>>>>>>>> ---
>>>>>>>>> U   wip/attackedit.bas
>>>>>>>>> U   wip/battle_udts.bi
>>>>>>>>> U   wip/bmod.bi
>>>>>>>>> U   wip/bmod.rbas
>>>>>>>>> U   wip/bmodsubs.bas
>>>>>>>>> U   wip/loading.rbas
>>>>>>>>> U   wip/udts.bi
>>>>>>>>>
>>>>>>>>> _______________________________________________
>>>>>>>>> Ohrrpgce mailing list
>>>>>>>>> ohrrpgce at lists.motherhamster.org
>>>>>>>>>
>>>>>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>>>>>>
>>>>>>>> _______________________________________________
>>>>>>>> Ohrrpgce mailing list
>>>>>>>> ohrrpgce at lists.motherhamster.org
>>>>>>>>
>>>>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> Ohrrpgce mailing list
>>>>>>> ohrrpgce at lists.motherhamster.org
>>>>>>>
>>>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>>>>
>>>>>> _______________________________________________
>>>>>> Ohrrpgce mailing list
>>>>>> ohrrpgce at lists.motherhamster.org
>>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>>>
>>>>> _______________________________________________
>>>>> Ohrrpgce mailing list
>>>>> ohrrpgce at lists.motherhamster.org
>>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>>
>>>> _______________________________________________
>>>> Ohrrpgce mailing list
>>>> ohrrpgce at lists.motherhamster.org
>>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>>
>>> _______________________________________________
>>> Ohrrpgce mailing list
>>> ohrrpgce at lists.motherhamster.org
>>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>>
>> _______________________________________________
>> Ohrrpgce mailing list
>> ohrrpgce at lists.motherhamster.org
>> http://lists.motherhamster.org/listinfo.cgi/ohrrpgce-motherhamster.org
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.motherhamster.org/pipermail/ohrrpgce-motherhamster.org/attachments/20220130/f6d6a5d8/attachment-0001.html>


More information about the Ohrrpgce mailing list