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:20 am]
RIVE -- :wob:
[12:14 am]
Ultraviolet -- :wob:
[2024-2-20. : 8:35 am]
NudeRaider -- jjf28
jjf28 shouted: :laughing:
:lol: = :lol:
[2024-2-20. : 5:43 am]
Vrael -- lil-Inferno
lil-Inferno shouted: an idiot who is banging ur mum
u wot m8?
[2024-2-20. : 3:43 am]
ClansAreForGays -- I don't get it, so it just decreases? Like if I have it set to 1, it'll be zero during build. But If I have it set to 100... it's be like 50?
[2024-2-20. : 1:49 am]
kgh829 -- The weird thing is that the building defense value wasn't set to Zero. If the building's defense is abnormally high, the building under construction becomes almost invincible, just like a completed building.
[2024-2-20. : 1:44 am]
kgh829 -- I just tested out of curiosity, and it turns out that the defense of Zerg buildings also decreases.
[2024-2-19. : 11:27 pm]
ClansAreForGays -- do zerg buildings have 0 armor while morning? like how terran building do while being built?
[2024-2-19. : 10:16 pm]
ClansAreForGays -- It even told me I should probably use scmdraft2 instead, becuase I mentioned staredit in the prompt.
[2024-2-19. : 9:59 pm]
Dem0n -- I wonder if it's scraped SEN lmao
Please log in to shout.


Members Online: jun3hong, Roy