Staredit Network > Forums > Modding Assistance > Topic: Making right-click issue a rally point order
Making right-click issue a rally point order
Apr 18 2017, 2:57 am
By: Pr0nogo  

Apr 18 2017, 2:57 am Pr0nogo Post #1



In my current project, a structure (Cerebrate Daggoth) has been modified to be able to produce units. Thanks to EXE edits, I've gotten everything working, except issuing a right-click order doesn't do anything. Ideally, it would function like any other production structure, and update the rally point on right-click instead of the player having to press 'r' or click on the ability in order to accomplish this. I have messed with EXE edits regarding rally points but to no avail.

Hopefully solving this answers a second question: is there anything that would stop rally point functionality from being given to zerg eggs and cocoons? I would like them to overwrite hatchery/lair/hive rally points (which should be no different than 'updating' the rally point), so players are able to rally onto resources for their drones and manually rally their military units to a different area of the map.




Apr 19 2017, 1:42 am Corbo Post #2

ALL PRAISE YOUR SUPREME LORD CORBO

It is my understanding that the rally order is pretty hardcoded. Have you done this before for another building/unit?

Couple of things in my mind. Check "is building" flag, give it a rally order button, check "can create units/is factory" dat requirements... unsure.



fuck you all

Apr 19 2017, 1:54 am Pr0nogo Post #3



Yes, all of that is done. Rally point functions properly, but right-clicking doesn't issue it.




Apr 19 2017, 3:09 am KYSXD Post #4



Quote from Pr0nogo
Thanks to EXE edits, I've gotten everything working, except issuing a right-click order doesn't do anything

I think this can be done with the Rally Point Exe Edit enabled. ('Allow All Buildings to Rally' and 'Use units.dat group flags for factories'). Also set the 'Factory' flag for that building in units.dat Group Flags.

If that doesn't work, disable all plugins to check if that requires other mofications than the Exe Edits (If that's the case, I could take a look in GPTP to help you with that if you want).

Quote from Pr0nogo
is there anything that would stop rally point functionality from being given to zerg eggs and cocoons?

The only fix I can think to that is to modify the orderNewUnitToRally() call in the GPTP's unit_morph hook (unit_morph.cpp) if the unit is an egg/cocoon (line 94).

Code
    if(
        unit->previousUnitType != UnitId::ZergCocoon &&
        unit->previousUnitType != UnitId::ZergLurkerEgg
    )
    {

        CUnit *rallyTarget; //Unit wich selects the rally destination

        // Check if the unit has rally point different than itself
        bool hasRally = (unit->rally.pt.x != unit->getX());

        // If the unit has a valid rally point, use it
        if((unit->rally.unit && unit->rally.unit != unit)
            || hasRally)
        {
            rallyTarget = unit;
        }
        else
        {
            rallyTarget = unit->connectedUnit;
        }

        // Normal behaviour-ish
        orderNewUnitToRally(unit, rallyTarget);
        if(unit2 != NULL)
        {
            orderNewUnitToRally(unit2, rallyTarget);
        }
    }


Maybe that could do the job. The only problem with this approach is that sometimes the zerg egg sets the connectedUnit (Lair, Hive, Hatchery) as the rally target when created. That's a weird behaviour from the original engine.




Options
  Back to forum
Please log in to reply to this topic or to report it.
Members in this topic: None.
[01:56 am]
Oh_Man -- cool bit of history, spellsword creator talking about the history of EUD ^
[09:24 pm]
Moose -- denis
[05:00 pm]
lil-Inferno -- benis
[10:41 am]
v9bettel -- Nice
[2024-4-19. : 1:39 am]
Ultraviolet -- no u elky skeleton guy, I'll use em better
[2024-4-18. : 10:50 pm]
Vrael -- Ultraviolet
Ultraviolet shouted: How about you all send me your minerals instead of washing them into the gambling void? I'm saving up for a new name color and/or glow
hey cut it out I'm getting all the minerals
[2024-4-18. : 10:11 pm]
Ultraviolet -- :P
[2024-4-18. : 10:11 pm]
Ultraviolet -- How about you all send me your minerals instead of washing them into the gambling void? I'm saving up for a new name color and/or glow
[2024-4-17. : 11:50 pm]
O)FaRTy1billion[MM] -- nice, now i have more than enough
Please log in to shout.


Members Online: NudeRaider, Roy