• Check out the results of the Techtree Contest #19!
  • Listen to a special audio message from Bill Roper to the Hive Workshop community (Bill is a former Vice President of Blizzard Entertainment, Producer, Designer, Musician, Voice Actor) 🔗Click here to hear his message!
  • Read Evilhog's interview with Gregory Alper, the original composer of the music for WarCraft: Orcs & Humans 🔗Click here to read the full interview.
  • Create a void inspired texture for Warcraft 3 and enter Hive's 34th Texturing Contest: Void! Click here to enter!
  • The Hive's 22nd Icon Contest: Creep Abilities is now concluded, time to vote for your favourite set of icons! Click here to vote!

Control system by MF

This bundle is marked as useful / simple. Simplicity is bliss, low effort and/or may contain minor bugs.
Requires: Jass New Gen Pack
Author: MF_Andreich
Compatibility: any game ver

This is a keyboard arrow control system, targeted for using in RPG-like maps. It's fully multiplayer-compatible and leak-free.

Benefits:
- Not using any path-checking functions like GetTerrainPathable
- Not using additional units for path-checking
- No camera shaking on collisions
- Smooth slow unit sliding when meeting an obstacle
- Works with any unit sizes

Explanations:
All import instructions are written in the README trigger of the map.
I'm not the author of this system, but he asked me to translate the readme from russian and post the system here.

Additional:
If you don't have NewGen, plain jass version of this system can be found here: Plain jass ver

Keywords:
Arrow Key Movement, RPG, Movement, Keys, System, Arrow Control, Arrows
Contents

Control System by MF_Andreich v.1.12 (Map)

Reviews
22:26, 2nd Jan 2010 TriggerHappy: Set/GetUnitState should be replaced with Set/GetWidgetLife. Though in your case your are checking if it's alive so just use UnitAlive. Store GetPlayerId(p) in associate, you are calling it like 6 times...
22:26, 2nd Jan 2010
TriggerHappy:

  • Set/GetUnitState should be replaced with Set/GetWidgetLife. Though in your case your are checking if it's alive so just use UnitAlive.
  • Store GetPlayerId(p) in associate, you are calling it like 6 times.
  • Inline UpUp_Actions (along with the other similar ones).
  • call ClearTextMessages() Why?
  • Make all the camera properties configurable.
 
Whoa russians are GENIOUS!!! This is one the best system on the Hive I think :O Thumb up! 5/5 ,,,,, One thing there should be is a no-delay arrow system, but I think it's impossible because warcraft 3 is a mouse based game and only use arrows for camera view. Thumb up again! No rep cause it's not ur system :/
 
Thanks, + rep even tho its not yours apparently
 
@ EvilStalker upload a plain jass version or so
This Sytsem dont work if i add a unit or add thomethink on the map_
I have Jass new gen but if i will test the map the dont load in wc3
I need help this Cam system makes me crazy U,U
 
@ Sumiku: dunno what's the matter. Maybe you can try copying the contents of the trigger (except the "InitTrig_SCS_plain_jass" function) to the "Custom Script" section instead of copying the trigger itself?

I've just tried opening the map in plain WE, saved, and it worked.
 
Last edited:
Bump

anyone can tell me how to add units to this so that when they walk it doesnt play and animation like corpse?

Exactly. When you use different models in the plain version it just screws up. Naga walk through the ground (swim anim), custom models don't do anything. I like the system and I want to use it, but right now it still isn't working properly :sad:
I looked into the triger and tryed to fix it myself, but your friend seems to be using some sort of indexanimation (never heard of that :hohum:). It works for paladin and gryfon, but I don't know how to modify it to fit other models.
Please ask him to fix it or tell us how to modify.

EDIT:
I finally discovered how to fix it! Using the animation tester script you try all the numbers until you find the one for walk animation and then you replace X with the animation number call
SCS_Associate(udg_Unit[GetPlayerId(GetTriggerPlayer())],GetTriggerPlayer(),X,false)
 
Last edited:
enemy control

This system is really AWESOME!:thumbs_up:
But...
Why can i move enemy units too?:confused:
 
Guys, if u can't get the plain jass version to work, just create a point(location) variable called "SCS_l" where the l is the little version of L, he forgot about that one in the variables trigger. and then, don't copy the Init trigger, because it really won't work, and associate the unit elsewhere.
Just to save some people like me time...
 
Back
Top